C++定义包括算数类型和空类型在内的基本数据类型。算数类型包含整型数(字符、整型数、布尔值)和浮点数;空类型不对应特定具体的值,仅仅用于一些特殊场合。
1. 数据的类型
其中,字符类型(char)的大小一般与一个机器字节相同为 8 位,而其他整型数的大小与机器相关。但在C++中有如下基本规定:
sizeof( long long ) >= sizeof( long ) >= sizeof( int ) >= sizeof( short )
而对于浮点数来说,float一般是一个字表示(7位有效位),double以两个字表示(16位有效位).
除布尔类型和扩展的字符类型外,其他整型刻划分为带符号的和不带符号,一般在类型前面加上unsigned即可。
2. 类型的转换
举例说明一些简单的类型转换
int a = 150;
float f = 2.1;
bool b;
b = (a != 0)? true: false; // b = true
a = (b == true)? 1:0; // a = 1
a = f; // a = 2
unsigned char c = -1 // c = ( -1 % 256 ) = 255
当一个算术表达式中既有无符号数又有int值时,那个int值就会被转化为无符号数;当无符号