基本數據類型的長度

C/C++僅僅定義了這些基本數據類型之間的關係,並沒有定義嚴格定義它們的字長。在不同的平臺上,根據編譯器不同的實現,它們的字長如下表所示:

數據類型 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位平臺上的字長模型。

  • I表示int
  • L表示long
  • LL表示long long
  • P表示pointer

32位Windows和unix/類unix系統基本都採用的是ILP32

64位Windows採用的是LLP64

64位unix/類unix(Linux, Mac OS X)基本都採用LP64

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章