C++ double到int的转换
前面讲到,C++可以在必要的时候自动将int转换为double,因为这种转换没有损失信息。反之,double转换为int则需圆整。C++不会自动执行这种转换,这是为了让程序员意识到,这样做会损失小数部分。
将浮点数转换为整型数的最简单方法是用类型转换(typecast)。之所以称之为类型转换,是因为它允许你将某种类型的一个值“回炉”成另一类型,这里“回炉”指的是再造或重塑,而非报废。
类型转换的语法形式与函数调用相似。例如:
double pi = 3.14159;
int x = int(pi);
int函数返回整型值,所以x的值是3。转换到整型往往要向下圆整,即使小数部分是0.99999999也要舍去。
C++的每个数据类型都有一个对应的函数,负责将其参数转换为相应的类型。