常用資料類型對應位元組數 :可用如sizeof(char),sizeof(char*)等得出
32位編譯器:
char :1個位元組
char*(即指針變量): 4個位元組(32位的尋址空間是2^32, 即32個bit,也就是4個位元組。同理64位編譯器)
short int : 2個位元組
int: 4個位元組
unsigned int : 4個位元組
float: 4個位元組
double: 8個位元組
long: 4個位元組
long long: 8個位元組
unsigned long: 4個位元組
64位編譯器:
char :1個位元組
char*(即指針變量): 8個位元組
short int : 2個位元組
int: 4個位元組
unsigned int : 4個位元組
float: 4個位元組
double: 8個位元組
long: 8個位元組
long long: 8個位元組
unsigned long: 8個位元組
下面列出一些基本類型在32位及64位機上的大小差異:
int long size_t time_t long long
32位機器 4位元組 4位元組 4位元組 4位元組 8位元組
64位機器 4位元組 8位元組 8位元組 8位元組 8位元組
在寫跨平台的程式時,一定要注意這些基本類型的長度大小。