C++基本數據類型總結

1、整形ios

一、整形有char、short、int、long、long long,這5個也默認爲signed XX ;函數

規則:short至少16位;int至少和short同樣;long至少32位,且至少和int同樣長;long long至少64位,且至少和long同樣長。spa

其中,後面4個都有無符號變體。unsigned short、unsigned int、unsigned long、unsigned long long.
注意,unsigned自己是unsigned int的縮寫。

 

能夠看到,在32位和64位計算機上,對於整形惟一不一樣的就是int和指針的大小,其中32位計算機上int佔2字節,64位上佔4字節。指針大小和int大小相同。指針

 
二、wchar_t
「char是8位字符類型,最多隻能包含256種字符,許多外文字符集所含的字符數目超過256個,char型沒法表示。
wchar_t數據類型通常爲16位或32位,但不一樣的C或C++庫有不一樣的規定,如GNU Libc規定wchar_t爲32位,總之,wchar_t所能表示的字符數遠超char型。
標準C++中的wprintf()函數以及iostream類庫中的類和對象能提供wchar_t寬字符類型的相關操做。」
 
三、C ++11新增類型:char16_t和char32_t
  char16_t:16位無符號->前綴u表示
  char32_t:32位無符號->前綴U表示
值得注意的是VS2013尚未支持char16_t和char32_t
 
 

2、浮點型對象

浮點有3個,float、double、long double
規則: float至少4字節;double至少6字節,且很多於float;long double至少和double同樣多。
3種類型,指數範圍至少是-37~37.
一般float32位,double64位,long double80、96或128位。我在VS2013上測到long double位64位。

 

3、前綴和後綴。blog

一、前綴:
0開頭表示8進制,0x或0X開頭表示16進制。
 
二、後綴:
—— l或L表示long常量
—— u或U表示unsigned int常量
—— ul、uL、Ul、UL、lU、lu、LU、Lu表示unsigned long常量。(lu能夠採用任意順序和大小寫表示)
—— ll、LL表示long long 常量。
—— ull、Ull、uLL、ULL表示unsigned long long常量。
 
三、對於浮點常量,
—— f或F表示float
—— l或L表示long double
—— 其餘都表示double
 
四、不帶後綴時的規則——儘量採用小的類型:
—— 對於10進制:int->long->long long
—— 對於8進制或16進制:int->unsigned int->long->unsigned long->long long ->unsigned long long 

 

參考:《C++ Primer Plus》、百度百科。io

相關文章
相關標籤/搜索