int 和 long 的區別

2021-10-23 13:33:31 字數 992 閱讀 8979

int

(4個位元組,32位)

unsigned int 0~4294967295

int -2147483648~2147483647

_int32

(4個位元組,32位)

unsigned _int32 0~4294967295

_int32 -2147483648 ~ 2147483647

long

(4個位元組,32位)

unsigned long 0~4294967295

long -2147483648~2147483647

long long

(8個位元組,64位)

unsigned long long:0~1844674407370955161

long long:-9223372036854775808~9223372036854775807

_int64

(8個位元組,64位)

unsigned _int64的最大值:0~18446744073709551615

_int64:-9223372036854775808~9223372036854775807

其中int 和 long 的區別

早期的作業系統是16位系統

int用二位元組表示,範圍是-32768~32767;

long用4位元組表示,範圍是-2147483648~2147483647。

後來發展到32位作業系統

int 用4位元組表示,與long相同。

目前的作業系統已發展到64位作業系統,但因程式編譯工藝的不同,兩者表現出不同的差別:

32位編譯系統:int佔四位元組,與long相同。

64位編譯系統:int佔四位元組,long佔8位元組,long資料範圍變為:-2^63 ~ 2^63-1

long和int的區別

short與long兩個限定符的引入可以為我們提供滿足實際需要的不同長度的整形數。int通常代表特定機器中證書的自然長度。short型別通常為16位,long型別通常為32位,int型別可以為16位或32位。各編譯器可以根據硬體特性自主選擇合適的型別長度,但要遵循下列限制 short與int型別至少...

long和int的區別

突然間就想到了 long 和int google 各種查詢,各種書籍 c primer c 程式語言 檢視,終於明白了一些。下面的話選自 c程式語言 short 與long兩個限定符的引入可以為我們提供滿足實際需要的不同長度的整形數。int通常代表特定機器中證書的自然長度。short型別通常為16位...

int 和 long的區別

資料模型決定了c語言中基本資料型別與資料寬度的對應關係。我們常用的32位模型稱為ilp32,而64位模型有三種 lp64 llp64和ilp64。在64位模型中,指標一定是64位的,但是int和long的寬度則在不同的資料型別中有不同的定義。如下表 datatype lp32 ilp32 llp64...