C++是一种强类型的语言,也就是说程序中用到的数据都是某种类型的数据,不存在某个数据没有类型的情况。C++标准定义了一些常用的数据类型,同时C++也支持用户自定义类型。
1、整型
int(整型)、short int(短整型,int可以省略)、long int(长整型、int可以省略)以及long long int(长长整型,int可以省略),分别表示不同长度的整数值。
123 //整型或短整型
456L //长整型数,带有后缀“L”
789l //长整型数,带有后缀“l”(小写的l)
901LL //长长整型数,带有后缀“LL”
234ll //长长整型数,带有后缀“ll”
在默认情况下,整型字面常量被当做一个int型值。如果在字面常量后面加一个“L"或“l”字母,即L的大写形式或者小写形式,则将其指定为long型。注意:长长整型数的后缀,大小写不可混用,如123Ll就是一个错误的写法。
在整型常量前面加一个"0",该数值将被解析成8进制数;在整型常量前面加一个"0X"或“0x”,该数值将被解析成16进制数;
2、特殊整型
为了解决电脑机器字长度不同的问题,C++提供了:
__int8 a=12;
__int16 b=35;
__int32 c=215;
__int64 d=4234;
3、无符号整型
如果要明确指明某个类型的无符号类型,则需要在该类型符前面加上unsigned关键字,例如:无符号int型就是unsigned int,无符号long型就是unsigned long。
无符号整型字面常量可以在一般字面常量后面加上后缀“U”或“u”来表示,如:
123u,345LU,57u;
//定义、初始化和赋值无符号变量的方法如下:
unsigned int x=123u;
unsigned long y=546LU;
4、浮点数
小数在计算机中称为浮点数,其数据类型有float(单精度浮点数)、double(双精度浮点数)和long double(长双精度浮点数,或称扩展精度浮点数)。
默认没有后缀的浮点数是双精度浮点数。单精度需要加“f”或“F”