標準中沒有說明各個類型的數據分別佔多少字節,但是規定如下:
- 長整型至少和整形一樣長,
- 整形應該至少應該和短整形一樣長,
- 短整型至少爲16位,
- 長整型至少是32位。
一般數據類型佔有的字節的數跟編譯器有關,和你的電腦是32位還是64位無關,由編譯器在編譯期間指定
16位編譯器 | 32位編譯器 | 64位編譯器 | |
char | 1 | 1 | 1 |
char * | 2 | 4 | 8 |
short int | 2 | 2 | 2 |
int | 2 | 4 | 4 |
unsigned int | 2 | 4 | 4 |
float | 4 | 4 | 4 |
double | 8 | 8 | 8 |
long | 4 | 4 | 8 |
long long | 8 | 8 | 8 |
unsighed long | 4 | 4 | 8 |
指針變量: 2個字節(16位的尋址空間是2^16, 即16個bit,也就是2個字節)
指針變量: 4個字節(32位的尋址空間是2^32, 即32個bit,也就是4個字節)
指針變量: 8個字節(64位的尋址空間是2^64, 即64個bit,也就是8個字節)