关于Linux下C编译错误(警告)cast from 'void*' to 'int' loses precision
2024-10-13 11:58:37
char *ptr; //此后省略部分代码
if( (int)ptr==- ) //出错地方
那句话的意思是从 void* 到 int 的转换丢失精度,相信看到解释有些人就明白了,
此问题只会出现在X64位的Linux上,因为在64位的机器上指针占用8个字节,int 占用四个字节,所以才会出现这样的问题,
解决方法:
(long)ptr == -1 就好了
最新文章
- CLR thread pool
- Longest Run on a Snowboard
- shell中的内建命令, 函数和外部命令
- gridview列前加复选框需要注意的一点
- openstack nova修改实例路径,虚拟磁盘路径
- Redis intset
- Hack 语言学习/参考---1.Hack 语言
- Linux 高性能服务器编程——TCP协议详解
- 2.cocos2dx 3.2中语法的不同之处,lambada表达式的使用和function和bind函数的使用
- HZNU第十二届校赛赛后补题
- python_Tkinter
- (爬虫向)python_json学习笔记
- Velocity之初印象
- 《Metasploit渗透测试魔鬼训练营》第一章读书笔记
- Graveyard(poj3154)
- 【BZOJ3456】城市规划 多项式求逆
- vue-route 路由传参的使用
- maven tomcat插件上传项目到tomcat服务器报错SEVERE: One or more listeners failed to start.
- Python中的赋值和拷贝
- Codeforces Round #235 (Div. 2) D. Roman and Numbers 状压dp+数位dp