1. ホーム
  2. c++

[解決済み] cout を使って double 値を完全な精度で表示するにはどうすればよいですか?

2022-03-25 16:32:18

質問

私の 以前の質問 を印刷していたのですが double を使って cout 予想外に丸くなってしまった。 どうすれば cout を印刷します。 double を全精度で使うか?

どのように解決するのですか?

で直接精度を設定することができます。 std::cout を使用し std::fixed フォーマット指定子

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

あなたができること #include <limits> を使えば、float や double の最大精度を得ることができます。

#include <limits>

typedef std::numeric_limits< double > dbl;

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