C++| 數(shù)據(jù)類(lèi)型
發(fā)布時(shí)間:2023-11-22 15:20:39
C++中, 每個(gè)變量在使用之前必須定義其數(shù)據(jù)類(lèi)型。本文主要介紹C++中數(shù)據(jù)類(lèi)型(布爾型(bool)、、整型(int)、浮點(diǎn)型(float)、雙浮點(diǎn)型(double)、字符型(char)、無(wú)值型 (void)、寬字符型(wchar_t))。
1、布爾型(bool)
bool是占一個(gè)字節(jié)的邏輯值,定義出來(lái)的變量只有true
和false
兩個(gè),分別表示真和假,對(duì)應(yīng)1
和0
兩個(gè)值。所以比較好理解的是,在C語(yǔ)言中我們常常定義一個(gè)int
類(lèi)型的troop邏輯變量,也只有1
和0
兩個(gè)值表示真和假。在C++中專門(mén)有這樣一個(gè)數(shù)據(jù)類(lèi)型應(yīng)該是方便我們使用。
例如,
#include <iostream>
using namespace std;
bool compar(int a,int b)
{
if (a>=b)
return true;
else if (a<b)
return false;
}
int main()
{
int a,b;
bool y;
//bool值可以進(jìn)行運(yùn)算
cout<<y<<endl<<(y+1)*2<<endl<<2*true+false+1;
y = true;
cin>>a>>b;
cout<<compar(a,b);
return 0;}
2、整數(shù)類(lèi)型(int)
int是一種數(shù)據(jù)類(lèi)型,在編程語(yǔ)言(C、C++、C#、Java等)中,是用于定義整數(shù)類(lèi)型變量的標(biāo)識(shí)符。C 語(yǔ)言提供了很多整數(shù)類(lèi)型(整型),這些整型的區(qū)別在于它們的取值范圍的大小,以及是否可以為負(fù)。int
是整型之一,一般被稱為整型。int
代表有符號(hào)整數(shù),也就是說(shuō),用int
聲明的變量可以是正數(shù),可以是負(fù)數(shù),也可以是零,但是只能是整數(shù)。標(biāo)準(zhǔn)規(guī)定int的最小取值范圍是 -32767 到 32767。int的取值范圍因機(jī)器而異,但是一定要大于或者等于 -32767 到 32767。標(biāo)準(zhǔn)整數(shù)類(lèi)型的存儲(chǔ)大小和值范圍,如下表,
類(lèi)型 | 位 | 范圍 |
int | 4 個(gè)字節(jié) | -2147483648 到 2147483647 |
unsigned int | 4 個(gè)字節(jié) | 0 到 4294967295 |
signed int | 4 個(gè)字節(jié) | -2147483648 到 2147483647 |
short int | 2 個(gè)字節(jié) | -32768 到 32767 |
unsigned short int | 2 個(gè)字節(jié) | 0 到 65,535 |
signed short int | 2 個(gè)字節(jié) | -32768 到 32767 |
long int | 8 個(gè)字節(jié) | -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 |
signed long int | 8 個(gè)字節(jié) | -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 |
unsigned long int | 8 個(gè)字節(jié) | 0 到 18,446,744,073,709,551,615 |
為了得到某個(gè)類(lèi)型或某個(gè)變量在特定平臺(tái)上的準(zhǔn)確大小,可以使用 sizeof
運(yùn)算符。表達(dá)式 sizeof(type)
得到對(duì)象或類(lèi)型的存儲(chǔ)字節(jié)大小。
#include <iostream>
using namespace std;
int main()
{
int a,b=2;
cin>>a>>b;
cout<<a<<endl<<b;
return 0;
}
3、浮點(diǎn)類(lèi)型
每當(dāng)需要帶小數(shù)的數(shù)字(例如,9.99
或3.14515
)時(shí),都應(yīng)使用浮點(diǎn)類(lèi)型。標(biāo)準(zhǔn)浮點(diǎn)類(lèi)型的存儲(chǔ)大小、值范圍和精度,如下表,
類(lèi)型 | 位 | 范圍 |
float | 4 個(gè)字節(jié) | 精度型占4個(gè)字節(jié)(32位)內(nèi)存空間,+/- 3.4e +/- 38 (~7 個(gè)數(shù)字) |
double | 8 個(gè)字節(jié) | 雙精度型占8 個(gè)字節(jié)(64位)內(nèi)存空間,+/- 1.7e +/- 308 (~15 個(gè)數(shù)字) |
long double | 16 個(gè)字節(jié) | 長(zhǎng)雙精度型 16 個(gè)字節(jié)(128位)內(nèi)存空間,可提供18-19位有效數(shù)字。 |
例如,
#include <iostream>
using namespace std;
int main()
{
float distance = 1.496E8;
double mass = 1.989E30;
cout << "distance = " << distance << endl;
cout << "mass = " << mass ;
return 0;
}
4、字符類(lèi)型
char類(lèi)型的值占用所有數(shù)據(jù)類(lèi)型的最小內(nèi)存量。通常只需要一個(gè)字節(jié)。char
不僅是一種整數(shù),也是一種特殊的類(lèi)型:字符(character)??梢酝ㄟ^(guò)字符常量為char類(lèi)型的變量指定初始值。
1)字符常量可以只是單引號(hào)之間的字符。常用單引號(hào)表示字符的字面量,如,'a'
,'1'
。單引號(hào)''
也是一個(gè)字符,例如,
#include <iostream>
using namespace std;
int main()
{
char c;