选择类型的一些经验准则:
- 当明确知晓数值不可能为负值时,选用无符号类型
- 使用int执行整数运算。在实际应用中,short常常显得太小而long一般和int一样的尺寸。如果你的数值超过了int的表示范围,选用long long
- 在算术表达式中不要使用char或bool,只有在存放字符或布尔值时才使用它们。因为类型char在一些机器上是有符号的,而在另一些机器上又是无符号的,所以,如果使用char进行运算特别容易出现问题。如果你需要使用一个不大的整数,那么明确指定它的类型是signed char或者 unsigned char 。
- 执行浮点数运算选用double,这是因为float通常精度不够,而双精度浮点数和单精度浮点数的计算代价相差无几。事实上,对于某些机器来说,双精度运算甚至比单精度还快。 long double 提供的精度在一般情况下是没有必要的,况且它带来的运行时消耗不容忽视。