C 資料型別所佔位元組大小

2021-07-23 23:33:27 字數 1266 閱讀 5518

對於指標型別,因為指標指向的是乙個位址,32位作業系統就是4位元組。64位作業系統那就是8位元組了。

int這個型別佔作業系統乙個記憶體單元大小。早先16位作業系統乙個記憶體單元是16位,所以是2個位元組;32位系統乙個記憶體單元是是32位,所以是4位元組;64位作業系統,4位元組。

整形加unsigned (short,int,long,long long)位元組長度不變

(1)16位編譯器

char         1個位元組8位 

short        2個位元組16位 

int                      2個位元組16位 

long                   4個位元組32位

long long: 

8個位元組

指標                   2個位元組16位 

float: 

4個位元組

double: 

8個位元組

char :              1個位元組

(2)32位平台  

char         1個位元組8位 

short        2個位元組16位 

int             4個位元組32位 

long         4個位元組32位

long long    8個位元組64位  

指標         4個位元組32位 

float: 

4個位元組

double: 

8個位元組

(3)64位平台  

char     1個位元組 

short     2個位元組

int                 4個位元組  

long             8個位元組(區別) 

long long    8個位元組  

指標             8個位元組(區別)

float: 

4個位元組

double: 

8個位元組

所以int,long int,short int的寬度都可能隨編譯器而異。但有幾條鐵定的原則(ansi/iso制訂的):

位與位元組

計算機記憶體的基本單元是位(bit)。

位元組(byte)通常指8位的記憶體單元,指的是描述家算計記憶體存量的度量單位,1kb=1024位元組,1mb=1024kb。

資料型別所佔位元組數

一 32位平台 分為有符號型與無符號型。有符號型 short 在記憶體中佔兩個位元組,範圍為 2 15 2 15 1 int 在記憶體中佔四個位元組,範圍為 2 31 2 31 1 long在記憶體中佔四個位元組,範圍為 2 31 2 31 1 無符號型 最高位不表示符號位 unsigned sho...

c 資料型別所佔位元組書 sizeof的用法

bool 1個位元組 char 1個位元組 wchar t 2個位元組 short 2個位元組 int 4個位元組 long 4個位元組 float 4個位元組 double 8個位元組 long double 8個位元組 可以使用sizeof type name 檢視每個資料型別所占用位元組數。s...

C語音中資料型別所佔位元組數

和機器字長及編譯器有關係 所以,int,long int,short int的寬度都可能隨編譯器而異。但有幾條鐵定的原則 ansi iso制訂的 1 sizeof short int sizeof int 2 sizeof int sizeof long int 3 short int至少應為16位...