《C++primer》第二章--变量和基本内置类型
基本内置类型
- 如何选择类型的几点建议
- 当明确知晓数值不能为负数时,选用无符号类型
- 使用int进行整数运算。因为short一般表示的范围比较小,而long一般和int有相同的范围。如果表示的范围超过了int就使用long long
- 算术运算时尽量不要使用char和bool,只有在存放字符型数据和布尔值的时候使用。因为char的符号在有的机器上面是有符号,在另外的一些机器上面确实无符号的,很容易出错。
- 执行浮点数运算时使用double。因为float的精度不够而且float和double的计算代价相差无几,甚至有些机器上面double的运算速度比float的速度快。
- 类型转换
- 当我们赋值给无符号类型一个超过了它表示的范围时,结果是初始值对无符号类型表示范围最大值取余后的结果。例如8bit大小的unsigned char,把-1给它,结果是-1%256,所得结果是255.
- 把一个负数转化成一个无符号类型的时候,类似于直接给一个无符号数赋值为一个负数,结果等于这个负数加上无符号数的模(例如上例)。
- 切勿混用有符号和无符号类型的数据进行运算。
- 字面值常量
含义 | 字符 | 含义 | 字符 |
---|
换行符 |
| 回车符 |
|
纵向制表符 | v | 纵向制表符 | |
反斜线 | | 退格符 | |
问号 | ? | 进纸符 | f |
报警(响铃符) | a | 双引号 | ” |
单引号 | ’ | 退格符 | |
还有一种泛化的转义序列