1. 程式人生 > >C語言 數據類型

C語言 數據類型

就是 含義 字節數 解析 數字 double 內存 nio 內存地址

數據類型表示一個內存塊的長度和解釋方式

數據類型決定長度:我們一個內存地址(0x30000000),本來這個地址只代表1個字節的長度,但是實際上我們可以通過給他一個類型(int),讓他有了長度(4),這樣這個代表內存地址的數字(0x30000000)就能表示從這個數字(0x30000000)開頭的連續的n(4)個字節的內存格子了(0x30000000 + 0x30000001 + 0x30000002 + 0x30000003)。
數據類型決定解析方法:譬如我有一個內存地址(0x30000000),我們可以通過給這個內存地址不同的類型來指定這個內存單元格子中二進制數的解析方法。譬如我 (int)0x30000000,含義就是(0x30000000 + 0x30000001 + 0x30000002 + 0x30000003)這4個字節連起來共同存儲的是一個int型數據;那麽我(float)0x30000000,含義就是(0x30000000 + 0x30000001 + 0x30000002 + 0x30000003)這4個字節連起來共同存儲的是一個float型數據;

(32位機器)C語言各種數據類型所占內存大小(字節數,一個字節8位)

1: char a: sizeof(a) = 1;

2: int a : sizeof(a) = 4;

3: short a: sizeof(a) = 2;

4: long a: sizeof(a) = 4;

5: double long a: sizeof(a) = 8;

6: float a: sizeof(a) = 8;

7: struct a{
char b;
int c;
short d;
};
struct a a1;
sizeof(a1) = 1+4+2 =7;

8: union a{

char b;
int c[10];
short d;
};
union a a1:
sizeof(a1) = sizeof(c) = 4*10 = 40;

9:char* a; sizeof(a) = 4;

C語言 數據類型