這篇文章主要介紹“C++數(shù)據(jù)類(lèi)型的取值范圍”,在日常操作中,相信很多人在C++數(shù)據(jù)類(lèi)型的取值范圍問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”C++數(shù)據(jù)類(lèi)型的取值范圍”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括耿馬網(wǎng)站建設(shè)、耿馬網(wǎng)站制作、耿馬網(wǎng)頁(yè)制作以及耿馬網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃等。多年來(lái),我們專(zhuān)注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,耿馬網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶(hù)以成都為中心已經(jīng)輻射到耿馬省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶(hù)的支持與信任!
創(chuàng)新互聯(lián)專(zhuān)注于企業(yè)全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站重做改版、福海網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5開(kāi)發(fā)、成都商城網(wǎng)站開(kāi)發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性?xún)r(jià)比高,為福海等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。
C++數(shù)據(jù)類(lèi)型是用來(lái)存儲(chǔ)值的所在處;它們有名字和數(shù)據(jù)類(lèi)型,變量的數(shù)據(jù)類(lèi)型決定了如何將代表這些值的位存儲(chǔ)到計(jì)算機(jī)的內(nèi)存中,變量名允許的***長(zhǎng)度隨編譯器的不同而不同。
而在C++數(shù)據(jù)類(lèi)型,則必須先聲明變量類(lèi)型再使用變量:int x1 = 1;int x = 1000;float y = 3.14;long z = 457000;這樣,編譯器就可以進(jìn)行類(lèi)型檢查,確保程序運(yùn)行時(shí)一切順利。數(shù)據(jù)類(lèi)型使用不當(dāng)會(huì)導(dǎo)致編譯錯(cuò)誤或警告,以便分析和糾正之后再運(yùn)行。
有些數(shù)據(jù)類(lèi)型有帶符號(hào)和無(wú)符號(hào)兩種。帶符號(hào)(signed)數(shù)據(jù)類(lèi)型可以包含正數(shù)和負(fù)數(shù),而無(wú)符號(hào)(unsigned)數(shù)據(jù)類(lèi)型只能包含正數(shù)。表1.1列出了C++中的數(shù)據(jù)類(lèi)型、所要內(nèi)存量和可能的取值范圍。
數(shù)據(jù)類(lèi)型 字節(jié) 數(shù)取值范圍:
char 1 -128到126 unsigned char 1 0到255 short 2 -32,768到32,767 unsigned short 2 0到65,535 long 4 -2,147,483,648到2,147,483,648 unsigned long 4 0到4,294,967,295 int 4 同long unsigned int 4 同unsigned long float 4 1.2E-38到3.4E381 double 8 2.2E-308到1.8E3082 bool 1 true或false
從上表可以看出,int與long相同。那么,為什么C++還要區(qū)分這兩種數(shù)據(jù)類(lèi)型呢?實(shí)際上這是個(gè)遺留問(wèn)題。在16位編程環(huán)境中,int要求2個(gè)字節(jié)而long要求4個(gè)字節(jié)。而在32位編程環(huán)境中,這兩種數(shù)據(jù)都用4個(gè)字節(jié)存放。
C++數(shù)據(jù)類(lèi)型只生成32位程序,所以int與long相同。說(shuō)明 在C++ Builder和BorLand C++ 5.0中,Bool是個(gè)真正的數(shù)據(jù)類(lèi)型。有些C++編譯器有Bool關(guān)鍵字,則Bool不是個(gè)真正的數(shù)據(jù)類(lèi)型。
有時(shí)Bool只是個(gè)typedef,使Bool等價(jià)于int。typedef實(shí)際上建立別名,使編譯器在一個(gè)符號(hào)與另一符號(hào)間劃上等號(hào)。typedef的語(yǔ)法如下:typedef int Bool;這就告訴編譯器:Bool是int的別名。說(shuō)明 只有double和float數(shù)據(jù)類(lèi)型使用浮點(diǎn)數(shù)(帶小數(shù)點(diǎn)的數(shù))。
其它數(shù)據(jù)類(lèi)型只涉及整數(shù)值。盡管integer數(shù)據(jù)類(lèi)型也可以指定帶小數(shù)點(diǎn)的數(shù)值,但小數(shù)部分會(huì)舍棄,只將整數(shù)部分賦予整型變量,例如:int x=3.75;得到的x取值為3。注意,這個(gè)整數(shù)值并不是四舍五入,而是放棄小數(shù)部分。
順便說(shuō)一句,大多數(shù)Windows程序很少用到浮點(diǎn)數(shù)。C++數(shù)據(jù)類(lèi)型可以在必要時(shí)進(jìn)行不同數(shù)據(jù)類(lèi)型間的換算。例如:short result;long num1 = 200;long num2 = 200;result = num1 * num2;這里我想將兩個(gè)長(zhǎng)整型的積賦予一個(gè)短整型。盡管這個(gè)公式混用了兩種數(shù)據(jù)類(lèi)型,但C++能夠進(jìn)行換算。
計(jì)算結(jié)果會(huì)怎樣呢?結(jié)果會(huì)讓你大吃一驚,是25536,這是繞接(wrop)的結(jié)果。從表1.1可以看出,短整型的***取值為32767,在***值之上加1會(huì)怎么樣呢?得到的是32768。這實(shí)際上與汽車(chē)?yán)锍逃?jì)從99999回到00000的道理一樣。為了說(shuō)明這點(diǎn),請(qǐng)輸入并運(yùn)行下列清單1.3中包含的程序。
到此,關(guān)于“C++數(shù)據(jù)類(lèi)型的取值范圍”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!