c語言的字長
『壹』 c語言中int short long 的具體區別是什麼
三種類型,在類型定義、佔用位元組數、數據范圍等方面存在不同點。
1、定義不同
int類型稱為整型;
short類型稱為短整型;
long類型稱為長整型;
2、佔用位元組數不同
short int型變數兩個位元組(兩個位元組);
int類型四個位元組(32位機中);
long int取值為8個位元組(32位機中);
3、數據范圍不同
short int型變數取值為-(2的16次方)+1 到 (2的15次方)-1;
int類型變數取值為-(2的32次方)+1 到 (2的31次方)-1;
long類型變數取值為-(2的64次方)+1 到 (2的63次方)-1;
(1)c語言的字長擴展閱讀
1、具體佔用幾個位元組C語言並沒有規定,C語言做了寬泛的限制:
1)、short int類型至少佔用2個位元組。
2)、int類型建議為一個機器字長。32位環境下機器字長為4位元組,64位環境下機器字長為8位元組。
3)、short類型的長度不能大於 int,long類型的長度不能小於 int。
參考資料
網路-C語言
『貳』 C語言的char,short,int和long類型分別有多長
char就是1位元組(固定不變),short不少於2位元組,int不少於short,long不少於4位元組,且long不少於int,long long不少於long。
除了char,其他整型範圍都是相對而言的,確保後一種的寬度不低於前一種即可(可能相等),在不同的年代,計算機硬體發展不同,內存、外存容量也不同,主流編譯器在設計的時候會綜合考慮計算機硬體的情況,來設計每一種數據類型的實際寬度。
char型在任何情況下都是佔1個位元組,而比如int型,它的長度與環境的字長相同,在16位的環境中,它佔16位,2個位元組;32位環境中佔4個位元組。
(2)c語言的字長擴展閱讀
在C語言中可以用sizeof運算符,獲取數據類型或者變數所佔的內存位元組數。示例代碼如下:
#includeintmain()
{
printf("%d %d %d ",sizeof(int),sizeof(short),sizeof(long));
return0;
}
『叄』 c語言類型所佔位元組數
類型
常見的有char、int、long、short、float、double及指針等.
字元類型
這里單只char,char變數在內存中存儲的是字元對應的ASCII碼值。所以長度也是固定的,為1個位元組。
整數類型
查了資料發現對各個類型的整數佔用位元組數是有一個規定的,雖然16位32位或者64位的機子各種類型所佔用的長度並不一樣。規則如下:
short 至少佔用2個位元組。
int 建議為一個機器字長。32位環境下機器字長為4位元組,64位環境下機器字長為8位元組。
short 的長度不能大於 int,long 的長度不能小於 int。
所以說,short並不一定短,long並不一定短,有可能都和int一樣長。
浮點數(小數)
C中浮點數有兩種,float和double,不像整數,小數的長度始終是固定的,float佔用4個位元組,double佔用8個位元組。
指針
C中指針即為地址,所以編輯器的定址空間則是指針的地址范圍。所以指針變數在32位機器的定址空間為2^32,要將所有地址都表示出來則需要為4個位元組長度,所以要佔用4個位元組長度。同理64位的編譯器則需要8個位元組長度。
『肆』 一個數字在C語言中是多少個位元組
一個數字在C語言中是2、4、8個位元組,以int類型、float類型和double類型來表示。
int類型佔用2位元組內存,表示整數,數據范圍在-2^31~2^31-1(-2147483648~2147483647)之間。
float類型佔用4位元組內存,表示單精度浮點數,數據范圍在-2^128 ~ 2^128(-3.40E+38 ~ +3.40E+38)之間。
double類型佔用8位元組內存,表示雙精度浮點數,數據范圍在-2^256 ~ 2^256(-1.90E+308 ~ +1.80E+308)之間。
(4)c語言的字長擴展閱讀:
雙精度浮點型類型數值可轉換到其他類型的整數或浮點數,反之亦然。雙精度浮點型常量的最後一個字元可加上「d」或「D」。其存儲格式與浮點型類似,最高位為符號位,次高11位為指數位,其次52位為尾數。
雙精度浮點型同數值型比,它能提供更高的數值精度,採用固定存儲長度的浮點數形式,每個雙精度浮點型數據佔8個位元組。與數值型數據不同,它的小數點位置是由輸入的數據值來決定的,並且只能用於表中的欄位。
『伍』 C語言字元數占幾個位元組,又是多少位。
對於幾乎所有的機器,1位元組均為8位,這是位元組的標準定義,至少在衡量存儲單位時是這樣。但是C語言有自己的定義:一個位元組為char類型佔用的位(bit)數。