溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何理解C語言的變量類型及內(nèi)存大小

發(fā)布時間:2021-09-29 11:28:13 來源:億速云 閱讀:107 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要講解了“如何理解C語言的變量類型及內(nèi)存大小”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何理解C語言的變量類型及內(nèi)存大小”吧!

類型存儲大小值范圍c輸入輸出格式具體范圍
char1byte(8位)-2^7 ~ 2^7-1%c-128 到 127
unsigned char1byte(8位)0 ~ 2^8-1%c0 到 255
signed char1byte(8位)-2^7 ~ 2^7-1%c-128 到 127
short2byte(16位)-2^15 ~ 2^15-1%d-32,768 到 32,767
unsigned short2byte(16位)0 ~ 2^16-1%u0 到 65,535
int4byte(32位)-2^31 ~ 2^31-1%d-2,147,483,648 到 2,147,483,647
unsigned int4byte(32位)0 ~ 2^32-1%u0 到 4,294,967,295
long4byte(32位)-2^31 ~ 2^31-1%ld-2,147,483,648 到 2,147,483,647
unsigned long4byte(32位)0 ~ 2^32-1%lu0 到 4,294,967,295
long long8byte(64位)2^63 ~ 2^63-1%lld-9,223,372,036,854 775,808到9,223,372,036,854,775,807
unsigned long long8byte(64位)0 ~ 2^64-1%llu0到18,446,744,073,709,551,615
float4byte-----%f-----
double8byte-----輸入用%lf,輸出用%f-----
long double10byte-----輸入輸出都用%Lf-----

此外,還有void 類型:

void 類型指定沒有可用的值。它通常用于以下三種情況下:

如何理解C語言的變量類型及內(nèi)存大小

說明:

不同編譯器對有些類型可能不能有不同數(shù)據(jù)長度,一般都是上述規(guī)律,了解就行。

編譯器可以根據(jù)自身硬件來選擇合適的大小,但是需要滿足約束:short和int型至少為16位,long型至少為32位,并且short型長度不能超過int型,而int型不能超過long型。這即是說各個類型的變量長度是由編譯器來決定的,而當前主流的編譯器中一般是32位機器和64位機器中int型都是4個字節(jié)。也就是說,

注意:

(1)int和unsigned int有可能只占兩個字節(jié)

(2)long有可能占8個字節(jié)

如何理解C語言的變量類型及內(nèi)存大小

(3)除了long long和unsigned long long之外,還有__int64以及unsigned __int64,其輸入輸出格式可以用%I64d,兩者表示范圍一樣,只是不同編譯器兼容性不一樣,具體可參考人家測試結(jié)果如下:

__int64 與long long 的區(qū)別

如何理解C語言的變量類型及內(nèi)存大小

感謝各位的閱讀,以上就是“如何理解C語言的變量類型及內(nèi)存大小”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對如何理解C語言的變量類型及內(nèi)存大小這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI