各數據類型取值范圍
bool型為布爾型,占1個字節,取值0或1。
BOOL型為int型,一般認為占4個字節,取值TRUE/FALSE/ERROR。
sbyte型為有符號8位整數,占1個字節,取值范圍在128~127之間。
bytet型為無符號16位整數,占2個字節,取值范圍在0~255之間。
short型為有符號16位整數,占2個字節,取值范圍在-32,768~32,767之間。
ushort型為無符號16位整數,占2個字節,取值范圍在0~65,535之間。
int型為有符號32位整數,占4個字節,取值范圍在-2,147,483,648~2,147,483,647之間。
uint型為無符號32位整數,占4個字節,取值范圍在0~4,294,967,295之間。
long型為64位有符號整數,占8個字節,取值范圍在9,223,372,036,854,775,808~9,223,372,036,854,775,807之間。
ulong型為64位無符號整數,占8個字節,取值范圍在0~18,446,744,073,709,551,615之間。
float型為32位單精度實數,占4個字節,取值范圍3.4E+10的負38次方~3.4E+10的38次方之間。
double型為64位實數,占8個字節,取值范圍1.7E+10的負308次方~1.7E+10的正308次方。
指針占4個字節。
注意:int占多少個字節是由編譯器決定的,ANSI標准定義int是占2個字節.
TC是按ANSI標准的,它的int是占2個字節的.
你可以在TC裡試.printf("%d",sizeof(int));結果是2;
但是在VC裡,一個int是占4個字節的,在VC裡面,
printf("%d",sizeof(int));
cout<<sizeof(int);結果都是4.
不同的編譯器,規定也不一樣.
float,double也是一樣的,在不同的編譯器裡,占的字節是不一樣的