C++ 提供了三种浮点类型:float、double 和 long double。我很少在我的代码中使用浮点数,但是当我这样做时,我总是被无害的行上的警告所吸引,比如
float PiForSquares = 4.0;
问题是文字 4.0 是双精度数,而不是浮点数——这很烦人。
对于整数类型,我们有 short int、int 和 long int,这非常简单。为什么 C 没有短浮点数、浮点数和长浮点数?“双”到底是从哪里来的?
编辑:浮动类型之间的关系似乎类似于整数。double 必须至少与 float 一样大,long double 至少与 double 一样大。没有其他精度/范围保证。