溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何定義C++中的C++數(shù)據(jù)類型

發(fā)布時間:2021-10-27 17:38:55 來源:億速云 閱讀:185 作者:柒染 欄目:編程語言

這篇文章給大家介紹如何定義C++中的C++數(shù)據(jù)類型,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

著重介紹C++數(shù)據(jù)類型,C++中的C++數(shù)據(jù)類型定義編譯器在內(nèi)存中存放信息的方式,在不同的開發(fā)環(huán)境中,可以向變量賦予任何數(shù)值類型,翻譯器能考慮根據(jù)數(shù)字長度和類型分配空間。

而在C++,則必須先聲明變量類型再使用變量:int x1 = 1;int x = 1000;float y = 3.14;long z = 457000;這樣,編譯器就可以進(jìn)行類型檢查,確保程序運(yùn)行時一切順利。數(shù)據(jù)類型使用不當(dāng)會導(dǎo)致編譯錯誤或警告,以便分析和糾正之后再運(yùn)行。

有些數(shù)據(jù)類型有帶符號和無符號兩種。帶符號(signed)C++數(shù)據(jù)類型可以包含正數(shù)和負(fù)數(shù),而無符號(unsigned)數(shù)據(jù)類型只能包含正數(shù)。表1.1列出了C++中的數(shù)據(jù)類型、所要內(nèi)存量和可能的取值范圍。

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ū)分這兩種C++數(shù)據(jù)類型呢?實(shí)際上這是個遺留問題。在16位編程環(huán)境中,int要求2個字節(jié)而long要求4個字節(jié)。而在32位編程環(huán)境中,這兩種數(shù)據(jù)都用4個字節(jié)存放。C++Builder只生成32位程序,所以int與long相同。

說明 在C++ Builder和BorLand C++ 5.0中,Bool是個真正的數(shù)據(jù)類型。有些C++編譯器有Bool關(guān)鍵字,則Bool不是個真正的數(shù)據(jù)類型。有時Bool只是個typedef,使Bool等價于int。

typedef實(shí)際上建立別名,使編譯器在一個符號與另一符號間劃上等號。typedef的語法如下:typedef int Bool;這就告訴編譯器:Bool是int的別名。說明 只有double和float數(shù)據(jù)類型使用浮點(diǎn)數(shù)(帶小數(shù)點(diǎn)的數(shù))。其它C++數(shù)據(jù)類型只涉及整數(shù)值。

盡管integer數(shù)據(jù)類型也可以指定帶小數(shù)點(diǎn)的數(shù)值,但小數(shù)部分會舍棄,只將整數(shù)部分賦予整型變量,例如:int x=3.75;得到的x取值為3。注意,這個整數(shù)值并不是四舍五入,而是放棄小數(shù)部分。順便說一句,大多數(shù)Windows程序很少用到浮點(diǎn)數(shù)。C++可以在必要時進(jìn)行不同C++數(shù)據(jù)類型間的換算。

例如:short result;long num1 = 200;long num2 = 200;result = num1 * num2;這里我想將兩個長整型的積賦予一個短整型。盡管這個公式混用了兩種數(shù)據(jù)類型,但C++能夠進(jìn)行換算。

計(jì)算結(jié)果會怎樣呢?結(jié)果會讓你大吃一驚,是25536,這是繞接(wrop)的結(jié)果。從表1.1可以看出,短整型的***取值為32767,在***值之上加1會怎么樣呢?得到的是32768。這實(shí)際上與汽車?yán)锍逃?jì)從99999回到00000的道理一樣。為了說明這點(diǎn),請輸入并運(yùn)行下列清單1.3中包含的程序。

關(guān)于如何定義C++中的C++數(shù)據(jù)類型就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

c++
AI