ホームページ  >  記事  >  バックエンド開発  >  std::ostream で正確な浮動小数点フォーマットを実現するにはどうすればよいですか?

std::ostream で正確な浮動小数点フォーマットを実現するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-28 18:03:29945ブラウズ

How to Achieve Precise Floating-Point Formatting with std::ostream?

std::ostream を使用した浮動小数点値のフォーマットされた出力

質問:

以下に示す printf_s 関数と同様に、std::ostream を使用して浮動小数点値の書式設定を正確に制御するにはどうすればよいですか?

<code class="cpp">printf_s("%11.6lf", my_double); // Prints " 42.000000"</code>

答え:

浮動小数点値を std::cout でフォーマットするには、ストリーム マニピュレータを利用します。次のコードは、目的の出力を実現します。

<code class="cpp">std::cout << std::fixed << std::setw(11) << std::setprecision(6) << my_double;</code>

説明:

  • std::fixed: 値が次のとおりであることを指定します。固定の小数点以下の桁数でフォーマットされます。
  • std::setw(11): 値がスペースで埋められる最小フィールド幅を定義します。
  • std::setprecision(6): 表示する小数点以下の桁数を設定します。
  • std::setfill('0'): (オプション) Fills指定された文字 (この場合は「0」) を含む空のスペース。

追加リソース:

std::ostream フォーマットに関する包括的なドキュメントについては、次を参照してください。次のリソースへ:

  • [std::ostream formatting](https://en.cppreference.com/w/cpp/io/manipulators) on cppreference.com
  • [std::ostream](https://www.learncpp.com/cpp-tutorial/formatted-output-with-io-manipulators/) on learncpp.com

以上がstd::ostream で正確な浮動小数点フォーマットを実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。