提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助檔案
文章目錄
- 前言
- C語言中的基本資料型別
- 1.單位
- 2.基本資料型別
- 3.為什么出現這么多的型別?
- 總結
前言
學習內容梳理,
C語言中的基本資料型別
1.單位
談基本資料型別之前,首先需要了解一下計算機的存盤單位,
首先,計算機由邏輯電路組成,邏輯電路通常只有兩個狀態,開關的接通與斷開,這兩種狀態正好可以用“1”和“0”表示,因此,計算機內部采用二進制存盤資訊,一個 二進制位包含的資訊量稱為位元(Bit)、位元就是組成資訊的最小單位,
接下來由小到大談一談其他的存盤單位,
1Byte=8Bit 表示范圍 :2^n(n代表位元位數),也就是0~255個無符號整數 or -128~127個有符號整數
1KB=1024Byte
1MB=1024KB
1GB=1024MB
1TB=1024GB
1PB=1024TB
用通俗易懂的方式解釋1位元組(Byte)的表示范圍,觀察下方八位二進制數字(由低位往高位看,1個位元位代表1位2進制數),上方是00000000,下方是00000001,表示兩種狀態,由于每一位的狀態都只有0或者1,根據排列組合-> 1位二進制數共有兩種狀態、2位二進制數有4種狀態、3位共8種狀態、以此類題,8位二進制數就有2^8種狀態,由于從0開始,那么其能表示的無符號數就是0~255啦,
00000000
00000001
2.基本資料型別
接下里說說資料型別,C語言中的基本資料型別有以下幾類:
基本資料型別 大小 表示范圍
char //字符資料型別 1Byte 0~2^8-1個無符號數
short //短整型 2Byte 0~2^16-1個無符號數
int //整形 4Byte 0~2^32-1個無符號數 C中整數默認為int型
long //長整型 4Byte 0~2^32-1個無符號數 (不同的系統和編譯器的大小可能會是8Byte)
long long //更長的整形 8Byte 0~2^64-1個無符號數
float //單精度浮點型 4Byte 0~2^32-1個無符號數
double //雙精度浮點型 8Byte 0~2^32-1個無符號數 C中浮點數默認為double型
對于整形變數(默認有符號),可以用unsigned(無符號數),signed(有符號數)來修飾,例如:
unsigned char a = 128;
我們還可以通過列印sizeof(型別名)來得到資料型別的大小,例如:
#include<stdio.h>
int main()
{
printf("char的大小是%d個位元組\n", sizeof(char));
printf("int的大小是%d個位元組\n", sizeof(int));
printf("long的大小是%d個位元組\n", sizeof(long));
printf("long long的大小是%d個位元組\n", sizeof(long long));
printf("float的大小是%d個位元組\n", sizeof(float));
printf("double的大小是%d個位元組\n", sizeof(double));
return 0;
}
以上代碼在32位VS2017中運行結果如圖:

學過其他編程語言的朋友可能會發現,以上資料型別并沒有提到字串型(string),那么C語言中可以表示字串嗎?答案是可以的, C語言中通過 ->char 字串名[]= "字串內容"來定義一個字串,
3.為什么出現這么多的型別?
- 因為對于不同的物件,不同的資料型別更具有代表性,
- 因為各資料型別的大小和表示范圍不同、給各個型別分到不同的空間,可以達到節約空間的目的,
- 便于計算機存盤與處理,
總結
以上就是我關于C語言基本資料型別總結的一些筆記,不足之處、歡迎補充指正!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/237233.html
標籤:其他
上一篇:作業系統學習總結
下一篇:模型計算機
