当前位置: 技术问答>linux和unix
如何去除64位指针赋给int时的编译警告?
来源: 互联网 发布时间:2016-07-28
本文导语: 在64位机编程时,原来在32位机有把指针赋给int的用法,可在64机会出现指针截断的问题,出现大片的警告,怎么才能避免这些警告呢? | 原来的赋值给int的程序,本身就是有bug的 long才是同cpu...
在64位机编程时,原来在32位机有把指针赋给int的用法,可在64机会出现指针截断的问题,出现大片的警告,怎么才能避免这些警告呢?
|
原来的赋值给int的程序,本身就是有bug的
long才是同cpu字长一样的,指针一定要用long保存
long才是同cpu字长一样的,指针一定要用long保存
|
对对对,指针都是long型的,只不过32机器上,long和int都是4个字节
|
还不如自己声明一个指针类型 64位时为long32位是为int
#ifdef 64_BIT
typedef POINT u_int64_t
#elseif 32_BIT
typedef POINT u_int32_t
#ifdef 64_BIT
typedef POINT u_int64_t
#elseif 32_BIT
typedef POINT u_int32_t
|
强制转换类型。
|
原来的做法本来就有问题,还要避免警告?
改程序吧!
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。