在計(jì)算機(jī)系統(tǒng)中,數(shù)據(jù)是放在內(nèi)存中的,數(shù)字、文字、符號(hào)、圖形、音頻、視頻等數(shù)據(jù)都是以二進(jìn)制形式存儲(chǔ)在內(nèi)存中的,它們并沒有本質(zhì)上的區(qū)別,那么 0001000 該理解為數(shù)字 8 呢,還是圖像中某個(gè)像素的顏色,還是要發(fā)出某個(gè)聲音?
也就是說,內(nèi)存中的數(shù)據(jù)有多種解釋方式,使用之前必須要確定。如int a 就表明這份數(shù)據(jù)是整數(shù),不能理解為像素、聲音等。
數(shù)據(jù)類型用來說明數(shù)據(jù)的類型,確定了數(shù)據(jù)的解釋方式,讓計(jì)算機(jī)和程序員不會(huì)產(chǎn)生歧義。
C語言里的六種基本數(shù)據(jù)類型有:short、int、long、char、float、double。
C語言里的六種基本數(shù)據(jù)類型
void 類型指定沒有可用的值,通常用于以下三種情況下:
C中不返回值的函數(shù)的返回類型為空,如void show(int x);
C中不帶參數(shù)的函數(shù)可以接受一個(gè) void, 如 int show(void);
指針指向 void,void* 類型表示未確定類型的指針。C/C++規(guī)定,void* 類型可以通過類型轉(zhuǎn)換強(qiáng)制轉(zhuǎn)換為任何其它類型的指針。如內(nèi)存分配函數(shù) void *malloc(size_t size),返回指向 void 的指針,可以轉(zhuǎn)換為任何數(shù)據(jù)類型。
變量的類型決定了變量存儲(chǔ)占用的空間。下表分別是標(biāo)準(zhǔn)整數(shù)類型和浮點(diǎn)類型的存儲(chǔ)大小、值范圍和精度。
整數(shù)類型的存儲(chǔ)大小
浮點(diǎn)類型的存儲(chǔ)大小
需要注意的是各種類型的存儲(chǔ)大小與系統(tǒng)位數(shù)有關(guān),為了得到某個(gè)類型或某個(gè)變量在特定平臺(tái)上的準(zhǔn)確大小,可以使用 sizeof 運(yùn)算符。
表達(dá)式 sizeof(type) 可以獲取對(duì)象或類型的存儲(chǔ)字節(jié)大小。
擴(kuò)展閱讀
Matlab中的基本數(shù)據(jù)類型介紹
浮點(diǎn)溢出的高昂代價(jià)
數(shù)據(jù)類型不匹配造成的安全漏洞
初識(shí)C語言指針
深入理解C語言的指針
C語言的內(nèi)存分配方式:堆和棧
-
二進(jìn)制
+關(guān)注
關(guān)注
2文章
795瀏覽量
41653 -
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7494瀏覽量
87963 -
C語言
+關(guān)注
關(guān)注
180文章
7604瀏覽量
136841
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論