不久前,有人告诉我long
在64位机器上不是64位,我应该总是使用int
.这对我来说没有意义.我已经看到docs(例如Apple官方网站上的文件)说long
在编译64位CPU时确实是64位.我查了64位Windows上的内容并找到了
- Windows:
long
并int
保持32位长度,并为64位整数定义特殊的新数据类型.
(来自http://www.intel.com/cd/ids/developer/asmo-na/eng/197664.htm?page=2)
我该怎么用?我应该定义类似uw
,sw
((UN)签署的宽度)为long
如果没有在Windows,否则做对目标CPU bitsize支票?