以前學了那麼久的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 關鍵字設計以下程式解決 獲取當前作業...