int在64位机或64位编译器中到底占用几个字节

来源:互联网 发布:蒋介石发动内战数据 编辑:程序博客网 时间:2024/04/29 17:06

数据类型    LP64     ILP64     LLP64     ILP32     LP32
 char         8        8         8         8         8
 short        16       16        16        16        16
 _int32      N/A       32       N/A       N/A       N/A
 int          32       64        32        32        16
 long         64       64        32        32        32
 long long   N/A      N/A        64       N/A       N/A
 pointer      64       64        64        32        32
 
LP64,ILP64,LLP64是64位平台上的字长模型,ILP32和LP32是32位平台上的字长模型。

64位Windows采用的是LLP64数据模型。
64位UNIX/Linux/MacOS X采用的是LP64数据模型。

对于支持SIMD指令集的CPU,比如MMX、SSE2/3/4等的,或者PowerPC指令的CPU,int显然不是最快的。因为那些CPU一个时钟周期能处理64位甚至128位整数。