第2章數(shù)據(jù)類(lèi)型、運(yùn)算符和表達(dá)式
【考點(diǎn)一】 C+ +語(yǔ)言的數(shù)據(jù)類(lèi)型
C+ +中的數(shù)據(jù)類(lèi)型大體可以分成三類(lèi),它們是:基本類(lèi)型、導(dǎo)出類(lèi)型和用戶(hù)定義類(lèi)型;绢(lèi)型是由C+ +語(yǔ)言預(yù)先定義好的數(shù)據(jù)類(lèi)型,它包括:邏輯型、字符型、整型、浮點(diǎn)型和空值型。導(dǎo)出類(lèi)型是由某種已知類(lèi)型構(gòu)造出來(lái)的數(shù)據(jù)類(lèi)型,它包括:數(shù)組、指針和引用。用戶(hù)定義類(lèi)型是指必須由用戶(hù)給出具體定義后才能使用的數(shù)據(jù)類(lèi)型,它包括:枚舉類(lèi)型和類(lèi)類(lèi)型。
1.基本類(lèi)型
。1)邏輯型邏輯型用關(guān)鍵字bool表示,因此又稱(chēng)為bool型(布爾型)。邏輯型的取值范圍只包含true和false,它們都是C+ +關(guān)鍵字。
(2)字符型〗字符型用關(guān)鍵字char表示,因此又稱(chēng)為char型,即把字符作為一種數(shù)據(jù)進(jìn)行操作。字符型的取值范圍是全部基本字符以及ASCII碼集或擴(kuò)充ASCII碼集對(duì)應(yīng)的全部符號(hào)。
。3)整型整型用關(guān)鍵字int表示,因此又稱(chēng)為int型,它是C+ +中最常用的數(shù)據(jù)類(lèi)型,整型數(shù)據(jù)的取值范圍是計(jì)算機(jī)所能表示的所有整數(shù)。
。4)浮點(diǎn)型浮點(diǎn)型包括單精度型和雙精度型兩種,單精度型用關(guān)鍵字float表示,又稱(chēng)float型;雙精度型用關(guān)鍵字double表示,又稱(chēng)double型。它們對(duì)應(yīng)著數(shù)學(xué)中實(shí)數(shù)的概念,即帶有小數(shù)點(diǎn)的數(shù)。浮點(diǎn)型數(shù)據(jù)的取值范圍原則上是任意大小和精度的小數(shù),但實(shí)際上不可能是任意大小的,而是有一定范圍的。C+ +中的浮點(diǎn)數(shù)可以采用尾數(shù)加階碼的表示形式,表示的浮點(diǎn)數(shù)范圍是:?jiǎn)尉刃?3.4E38~3.4E38,但不能超過(guò)7位有效數(shù)字;雙精度型-1.7977E308~1.7977E308 ,但不能超過(guò)15位有效數(shù)字。
(5)空值型空值型用關(guān)鍵字void表示,因此又稱(chēng)為void型。空值型的取值為空。C+ +中不存在void型的常量或變量。C+ +語(yǔ)言規(guī)定,所有函數(shù)說(shuō)明都必須指明返回值類(lèi)型,沒(méi)有返回值的函數(shù)應(yīng)說(shuō)明為void類(lèi)型的函數(shù);另外,void類(lèi)型還可以用來(lái)聲明一個(gè)指針變量。
2.基本類(lèi)型的派生類(lèi)型C+ +語(yǔ)言中,基本類(lèi)型的字長(zhǎng)及其取值范圍可以放大和縮小,改變后的類(lèi)型就叫做基本類(lèi)型的派生類(lèi)型。派生類(lèi)型聲明符是由基本類(lèi)型關(guān)鍵字char、int、float、double前面加上類(lèi)型修飾符組成的。類(lèi)型修飾符包括:short短類(lèi)型,縮短字長(zhǎng);long長(zhǎng)類(lèi)型,加長(zhǎng)字長(zhǎng);signed有符號(hào)類(lèi)型,取值范圍包括正負(fù)值;unsigned無(wú)符號(hào)類(lèi)型,取值范圍只包括正值; 【考點(diǎn)二】 常量常量是指在程序執(zhí)行過(guò)程中值不改變的量。常量有兩種表示形式,即字面常量和符號(hào)常量。字面常量的類(lèi)型是根據(jù)書(shū)寫(xiě)形式來(lái)區(qū)分的,它們的類(lèi)型分別為:整型、浮點(diǎn)型、字符型、字符串型,每個(gè)字面常量的字面本身就是它的值。符號(hào)常量是一個(gè)標(biāo)識(shí)符,在程序中必須遵循"先聲明,后使用"的原則。
1.邏輯常量邏輯常量主要用在邏輯運(yùn)算中,此外,由于邏輯值對(duì)應(yīng)著整數(shù)1或0,所以它也能夠像其他整數(shù)一樣出現(xiàn)在表達(dá)式中,參與各種整數(shù)運(yùn)算。
2.字符常量字符常量簡(jiǎn)稱(chēng)字符,它以單引號(hào)作為起止符號(hào),中間有一個(gè)或若干個(gè)字符。這是一般意義上的字符常量;除此之外還有一種特殊形式的字符常量,以"\"開(kāi)頭的包括多個(gè)字符的字符序列也是符合規(guī)定的字符常量。但是,無(wú)論字符常量包含一個(gè)還是多個(gè)字符,每個(gè)字符常量只能表示一個(gè)字符,當(dāng)字符常量的一對(duì)單引號(hào)內(nèi)多于一個(gè)字符時(shí),則將按照一定的規(guī)則解釋為一個(gè)字符。計(jì)算機(jī)中常用的ASCII字符也是字符型的數(shù)據(jù),因?yàn)锳SCII碼值在0~127之間,正好落在字符型數(shù)據(jù)的取值范圍之內(nèi)。ASCII字符集中的每一個(gè)顯示字符(個(gè)別字符除外)都可以作為一個(gè)字符常量。但是,對(duì)于一些特殊的字符,如回車(chē)、換行等具有控制功能的字符,或者像單引號(hào)、雙引號(hào)等作為特殊標(biāo)記使用的字符,就無(wú)法直接采用單引號(hào)作為起止符號(hào)來(lái)表示。C+ +中引入了"轉(zhuǎn)義"字符的概念,其含義是:用反斜線"\"引導(dǎo)的下一個(gè)字符失去了原來(lái)的含義,而轉(zhuǎn)義為具有某種控制功能的字符。另外,還允許用反斜線引導(dǎo)一個(gè)具有1至3位的八進(jìn)制整數(shù)或一個(gè)以字母x(大、小寫(xiě)均可)作為開(kāi)始標(biāo)記的具有1至2位的十六進(jìn)制整數(shù),對(duì)應(yīng)的字符就是以這個(gè)整數(shù)作為ASCII碼的字符。
3.整型常量整型常量就是整型常數(shù),簡(jiǎn)稱(chēng)整數(shù),它有十進(jìn)制、八進(jìn)制和十六進(jìn)制3種表示。(1)十進(jìn)制整數(shù)十進(jìn)制整數(shù)以正號(hào)(+)或負(fù)號(hào)(-)開(kāi)頭,由首位非0的一串十進(jìn)制數(shù)字組成。若以正號(hào)開(kāi)頭則為正數(shù),若以負(fù)號(hào)開(kāi)頭則為負(fù)數(shù),若省略正負(fù)號(hào),則默認(rèn)為正數(shù)。當(dāng)一個(gè)十進(jìn)制整數(shù)大于等于-2 147 483 648(即231),同時(shí)小于等于2 147 483 647(即-231-1)時(shí),則被系統(tǒng)看作是整型常量;當(dāng)在2 147 483 648~4 294 967 295即232-1范圍之內(nèi)時(shí),則被看作是無(wú)符號(hào)整型常量;當(dāng)超過(guò)上述兩個(gè)范圍時(shí),則無(wú)法用C+ +整數(shù)類(lèi)型表示,只有把它用實(shí)數(shù)(即帶小數(shù)點(diǎn)的數(shù))表示才能夠被有效地存儲(chǔ)和處理。(2)八進(jìn)制整數(shù)八進(jìn)制整數(shù)以數(shù)字0開(kāi)頭,后面接若干個(gè)八進(jìn)制數(shù)字(借用十進(jìn)制數(shù)字中的0~7)。八進(jìn)制整數(shù)前面不帶正負(fù)號(hào),全部默認(rèn)為正數(shù)。當(dāng)一個(gè)八進(jìn)制整數(shù)大于等于0同時(shí)小于等于017777777777時(shí),則稱(chēng)為整型常量,當(dāng)大于等于020000000000同時(shí)小于等于037777777777時(shí),則稱(chēng)為無(wú)符號(hào)整型數(shù)量。不要使用超過(guò)上述兩個(gè)范圍的八進(jìn)制整數(shù),因?yàn)闆](méi)有與此相對(duì)應(yīng)的C+ +整數(shù)類(lèi)型。(3)十六進(jìn)制整數(shù)十六進(jìn)制整數(shù)以數(shù)字0和字母x(大、小寫(xiě)均可)開(kāi)頭,后面接若干個(gè)十六進(jìn)制數(shù)字(借用十進(jìn)制數(shù)字0~9,字母A~F或a~f)。當(dāng)一個(gè)十六進(jìn)制整數(shù)大于等于0同時(shí)小于等于0x7FFFFFFF時(shí),則稱(chēng)為整型常量,當(dāng)大于等于0x80000000同時(shí)小于等于0xFFFFFFFF時(shí),則稱(chēng)為無(wú)符號(hào)整型常量,與八進(jìn)制整數(shù)類(lèi)似,超過(guò)上述兩個(gè)范圍的十六進(jìn)制整數(shù)也沒(méi)有與之相對(duì)應(yīng)的C+ +整數(shù)類(lèi)型,所以也不能使用它們。C+ +中的整型數(shù)據(jù)除了一般表示方法之外,還允許給它們添加后綴u或l。對(duì)于任一種進(jìn)制的整數(shù),若后綴為字母u(大、小寫(xiě)均可),則規(guī)定它為一個(gè)無(wú)符號(hào)整型(unsigned int)數(shù),若后綴為字母l(大、小寫(xiě)均可),則規(guī)定它為一個(gè)長(zhǎng)整型(long int)數(shù)。在一個(gè)整數(shù)的末尾,可以同時(shí)使用u和l,并且對(duì)排列無(wú)要求。
希望與更多計(jì)算機(jī)等級(jí)考試的網(wǎng)友交流,請(qǐng)進(jìn)入計(jì)算機(jī)等級(jí)考試論壇
更多信息請(qǐng)?jiān)L問(wèn):考試吧計(jì)算機(jī)等級(jí)考試欄目
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |