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