C 中各種資料型別佔據位元組長度

2021-09-11 07:55:25 字數 676 閱讀 7439

準備校招筆試的時候經常遇到c++某個資料型別佔據多少個位元組的問題,查閱了下資料,總結如下:

首先羅列一下c++中的資料型別都有哪些:

1、整形:int、long、short(佔2位元組)

2、字元型:char、wchar_t

3、布林型:bool

4、浮點型:float、double

5、指標

一、整形

int佔據作業系統乙個記憶體單元的大小。long跟int相同

早先16位作業系統乙個記憶體單元是16位,所以是2個位元組;32位系統乙個記憶體單元是是32位,所以是4位元組;64位作業系統乙個記憶體單元是16位,故佔8個位元組。

二、字元型

char型別通常佔據乙個位元組,對於用於擴充套件字符集的wchar_t型別,需要佔據兩個位元組。

三、布林型

bool佔據乙個位元組

四、浮點型

float佔據4個位元組,double是float的兩倍即8個位元組

五、指標

指標位元組長度計算原理其實跟int差不多,乙個指標的位數和作業系統的位數是相等的,即32位系統應該是4個位元組,64位系統應該是8個位元組。

ps.**演示如下

** 分類: c++基礎知識

C語言中各種資料型別長度

c語言的基本資料型別有以下幾個 int 整型 char 字元型 float 單精度浮點型 double 雙精度浮點型 另外,在基本資料型別基礎上附加一些限定詞,得到擴充的資料型別。short,long可以應用到整型,unsigned可以應用到整型和字元型 short int 或short 短整型 l...

c語言中各種資料型別的長度

在32位平台和64位平台上,同一種資料型別可能有不同的資料長度 型別32位平台 64位平台 char11 short22 int4 4long48 long long88 float44 double88 size t48 ssize t48 看到沒,從上面的結果可以看到不同,所以不要假定上表內顏色...

c語言中各種資料型別的長度

在32位平台和64位平台上,同一種資料型別可能有不同的資料長度 型別32位平台 64位平台 char11 short22 int4 4long48 long long88 float44 double88 size t48 ssize t48 看到沒,從上面的結果可以看到不同,所以不要假定上表內顏色...