温馨提示:本文翻译自stackoverflow.com,查看原文请点击:c++ - How do I print a double value with full precision using cout?
c++ floating-point precision iostream cout

c++ - 如何使用cout以全精度打印双精度值?

发布于 2020-03-30 21:43:16

因此,我已经得到了我最后一个问题的答案(我不知道为什么我没有想到这一点)。我打印double使用cout高腾时,我没想到它圆。如何使用全精度cout打印double

查看更多

提问者
被浏览
51
Bill the Lizard 2019-03-05 02:51

您可以直接设置精度std::cout并使用std::fixed格式说明符。

double d = 3.14159265358979;
cout.precision(17);
cout << "Pi: " << fixed << d << endl;

#include <limits>可以获得浮点数或双精度数的最大精度。

#include <limits>

typedef std::numeric_limits< double > dbl;

double d = 3.14159265358979;
cout.precision(dbl::max_digits10);
cout << "Pi: " << d << endl;