c語言中資料型別大體可以分為這兩種:基本資料型別和構造型別。由於本人才學不久,今天就只介紹一下基本資料型別。
基本資料型別又分為這三種:整數型、浮點型、字元型。
short 短整型
int 整型
long 長整型
long long 超長整型
它們所佔的記憶體大小又是多大呢?我們可以用sizeof()來求一下
printf("%d\n",sizeof(short));
printf("%d\n",sizeof(int));
printf("%d\n",sizeof(long));
printf("%d\n",sizeof(long long));
結果如下:
我們可以清楚地看到short佔2個位元組,int和long佔4個位元組,long long佔8個位元組。
這些型別表示的數的範圍是:
short -2^15 — (2^15-1)
int -2^31 — (2^31-1)
long -2^31 — (2^31-1)
long long -2^63 — (2^63-1)
初學者對於浮點型肯定在想這到底是個什麼玩意兒,還叫浮點型,真的有漂著的小點嘛。別說,浮點型還真有,浮點型就是我們常說的小數,它的精度可以到小數點後6位。
下面我們來看一下浮點型資料:
float 單精度浮點數
double 雙精度浮點數
看到這裡我當時納悶了,這都是小數還分什麼單精度、雙精度,原因在這:
1、在記憶體中所佔大小不同
單精度佔4個位元組
雙精度佔8個位元組
2、有效數字位數不同
單精度的有效數字是8個
雙精度的有效數字是16個
3、表示的數的範圍不同
單精度浮點的表示範圍:-3.40e+38 ~ +3.40e+38
雙精度浮點的表示範圍:-1.79e+308 ~ +1.79e+308
我們看一下它們所佔的記憶體大小:
相比於整數型和浮點型,字元型就少的可憐了,僅有乙個。
char 字元型
char型別在c語言中用來建立字元變數,它佔得記憶體很小,僅有1個位元組。
那麼它所能表示的數的範圍也很有限了。
char -128 — 127
在生活中,我們一般使用char來建立字元變數,但其實char型別也可以表示整數型,只不過範圍很小,因此char又被稱為小整型。
當我們把乙個超出char型別範圍的數賦值給char型別資料後它會這樣操作:
1、讀取乙個位元組的數
2、前面空的補上和那個數符號位相同的
看一下**和輸出結果:
char ch = 65;
int i = 123456789;
ch = i;
printf("%x\n", i);
printf("%x\n", ch);
結果:
我目前了解的基本資料型別就是這樣了,不足之處請大家多多指教。
C語言 資料型別
基本型別 整形 int 字元型 char 實型 浮點型 單精度 float 雙精度 double 構造型別 陣列型別,結構型別 struct 聯合型別 uion 列舉型別 enum 指標型別 空型別 無值型別 void。常量 在程式執行過程中,其值不能被改變的量稱為常量。變數 變數代表記憶體中具有特...
c語言資料型別
下面是我關於c語言中各種資料型別長度的總結 參考the c programming language 1.c語言中的整數型別有char,short,int,long等幾種,下面是c語言對每種資料型別長度的規定 a short和long型別的長度不相同 b int型別通常同具體機器的物理字長相同 c ...
C語言 資料型別
整形資料在記憶體中的存放形式 數值是以補碼表示的 1.正數的補碼和原始碼相同,2.負數的補碼 將該數的絕對值的二進位制形式按位取反再加1.例如 求 10 的補碼 10的原始碼 0000 0000 0000 1010 取反 1111 1111 1111 0101 再加1,得 10補碼 1111 111...