ホームページ >バックエンド開発 >C++ >std::cout で浮動小数点数をフォーマットするにはどうすればよいですか?

std::cout で浮動小数点数をフォーマットするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-30 02:27:291005ブラウズ

How to Format Floating Point Numbers with std::cout?

std::cout を使用した浮動小数点数の書式設定

この質問は、std::cout を使用して浮動小数点数を書式設定する際の課題に対処します。 C の基本的な出力ストリーム。ユーザーは、std::cout で使用できる書式設定オプションが限られていることに不満を表明し、より詳細な sprintf_s 関数に頼ることを検討しています。彼らは、std::ostream の書式設定機能を統合する包括的なリファレンスを求めています。

回答:

幸いなことに、std::cout には、柔軟な書式設定オプションを提供するストリーム マニピュレータが用意されています。浮動小数点数。これらのマニピュレータには次のものがあります。

  • std::fixed: 科学表記法ではなく固定小数点表記法を指定します。
  • std::setw(width): 出力のフィールド幅を設定します。左または右にスペースを埋め込みます。
  • std::setprecision(precision): 小数点以下の桁数を制御します。
  • std::setfill(character): 空の値を埋めます。指定された文字を含むフィールド内のスペース。

例:

「 42.000000」の目的の出力は、次のコードを使用して実現できます:

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

追加メモ:

  • マニピュレーター std::fixed は、数値が固定の小数点以下の桁数でフォーマットされることを保証します。
  • マニピュレータ std::setw と std::setprecision は、それぞれフィールド幅と精度を制御します。
  • マニピュレータ std::setfill を使用して、空のスペースをゼロまたはその他の任意の文字で埋めることができます。

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

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