类型 | 大小 | 数值范围 |
无值型void | 0 byte | 无值域 |
布尔型bool | 1 byte | true(非0值) false(0) |
有符号短整型short [int] /signed short [int] | 2 byte | -32768(-2^15) ~ 32767(2^15-1) |
无符号短整型unsigned short [int] | 2 byte | 0 ~ 65535(2^16-1) |
有符号整型int /signed [int] | 4 byte | -2147483648(-2^31) ~ 2147483647(2^31-1) |
无符号整型unsigned [int] | 4 byte | 0 ~ 4294967295(2^32-1) |
有符号长整型long [int]/signed long [int] | 4 byte | -2147483648(-2^31) ~ 2147483647(2^31-1) |
无符号长整型unsigned long [int] | 4 byte | 0 ~ 4294967295(2^32-1) |
long long | 8 byte | 0 ~ 18446744073709552000(2^64-1) |
有符号字符型char/signed char | 1 byte | -128(-2^7) ~ 127(2^7-1) |
无符号字符型unsigned char | 1 byte | 0 ~ 255(2^8-1) |
宽字符型wchar_t (unsigned short.) | 2 byte | 0 ~ 65535(2^16-1) |
单精度浮点型float | 4 byte | -3.4E-38 ~ 3.4E+38 |
双精度浮点型double | 8 byte | 1.7E-308 ~ 1.7E+308 |
long double | X byte | 对于不同平台有不同的实现 |
计算机将浮点类型(float,double)的值分成两部分存储。一部分表示值(基准值),另一部分用于对值进行放大或缩小(缩放因子,作用是移动小数点的位置(浮点类型因此得名))。
34.12 基准值:0.3412 缩放因子: 100
3412 基准值:0.3412 缩放因子:10000
对于float , C++只保证6位有效位。
对于double , C++保证15位有效位。
浮点常量默认是double类型,若要定义float类型的变量,要在数值后面加上F( float n=1.0F)。
当运算涉及两种类型时,较小的类型将被转换为较大的类型。
强制类型转换不会修改变量本身,而是创建一个新的、指定类型的值,可以在表达式中使用这个值。
c=a%b; c的正负与a的正负相同,与b无关。