C語言整數類型在X86和X64下的字節大小


C聲明 32位機器(X86) 64位機器(X64)
char 1 1
short int 2 2
int 4 4
long int 4 8
long long int 8 8
char * 4 8
float 4 4
double 8 8

幾個注意點:

1:指針類型變量的大小只取決於計算機系統的位數,它的大小也等於該計算機系統的int類型大小,即該計算機系統“字”的大小。(這句話中的int其實是上面表格中的long int,因為C語言為了保持跨平台的統一,所以char, short int, int, long long int都采用了固定位數,不隨系統位數變化而變化,但是long int類型是根據系統位數決定的!)

2:在32位系統下,是無法直接操作64位的整數的,所以32位下的long long int的操作是編譯器通過一系列位運算完成的。

3:一個計算機系統的尋址能力由“字”決定,例如:32位系統下的“字”大小為32位(意思就是采用32位大小的整數來表示每個內存地址),所以尋址能力為2的32次方,地址范圍為0 ~ 2^32 - 1。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM