C中各資料型別的取值範圍

2021-06-26 13:18:02 字數 842 閱讀 2388

以前學了那麼久的c,一直不清楚各資料型別佔多少位,取值範圍是多少。因為書上都說的不具體,只是說int一般是16位或者32位,short一般16位,long物件一般是32位等

等。《c程式語言》中的練習2-1很簡便的幫忙解決了這個問題,不僅利於理解,而且直接可在不同的機器得到答案。

如何獲得各資料型別的取值範圍:

方法一:利用標準標頭檔案

方法二:利用按位運算子進行計算

方法一:

#include

#include

int 

main () 

直接檢視標準標頭檔案就能明白。

sizeof()c語言中判斷資料型別或者表示式長度符;不是乙個函式,位元組數的計算在程式編譯時進行,而不是在程式執行的過程中才計算出來。

方法二:

#include

/*determin ranges of types*/

main()

int佔多少位是由編譯器(編譯器到底是什麼,還有待了解)決定的。

本機採用vs2010,32位作業系統。

char    8位   -128~127

int      32位  -214748368~214748367

long   32位  -214748368~214748367

short  16位   -32768~32767

uchar  8位    0~255

ulong  32位  0~4294967295

uint     32位  0~4294967295

ushort  16位  0~65535

float    32位

double  64位

C 中各資料型別取值範圍

1.字元型別 型別 名稱位元組數 範圍signed char 有符號字元型 1 128 127 unsigned char 無符號字元型 10 255 2.整數型別 型別名稱 位元組數範圍 signed int 有符號整型 4 2147483648 2147483647 unsigned int 無...

C 各資料型別取值範圍(備忘)

各資料型別取值範圍 bool型為布林型,佔1個位元組,取值0或1。bool型為int型,一般認為佔4個位元組,取值true false error。sbyte型為有符號8位整數,佔1個位元組,取值範圍在128 127之間。bytet型為無符號16位整數,佔2個位元組,取值範圍在0 255之間。sho...

C語言各資料型別大小和取值範圍

因為cpu的差異,各系統中的資料型別所佔的位元組數 bytes 不同,二進位制位數 bit 也不同。那麼怎樣才能知道自己系統的資料型別的位元組數,位數呢?授之以魚不如授之以漁,大家可以自己從電腦裡獲取這些資訊。首先我們知道1個位元組等於8個位,可以用sizeof 關鍵字設計以下程式解決 獲取當前作業...