2011-03-04 55 views
0
main() 
{ 
    double d1 = 1234.1; 
    cout << "d1 = 1234.1 --> " << d1 << endl; 
    double d2 = 1234.099999; 
    cout << "d2 = 1234.099999 --> " << d2 << endl; 
} 

输出:如何保持双的精度在C++中的Visual Studio 2008

d1 = 1234.1 --> 1234.1 
d2 = 1234.099999 --> 1234.1 

我怎样才能为D2的确切值? 请建议。

+2

除了输出舍入之外,请记住'double'不是一个确切的数字类型。 – 2011-03-04 08:46:06

+2

请不要发布两次完全相同的问题:[如何在C++中保持Double的精度](http://stackoverflow.com/questions/5191018/how-to-maintain-doubles-precision-in-c) – 2011-03-04 09:28:41

回答

0

尝试

cout.precision(<number of digits after comma>); 

cout.precision(5); 

输出语句之前。