C の行終了: "n"、文字リテラル "'n'"、または std::endl
の世界ではC プログラミングでは、行末に「n」、「n」、または std::endl のいずれを使用するかを決めるのはよくある難題です。 writing to std::cout.
当初は「n」が推奨されるアプローチでしたが、最近では「'n'」の人気が高まっています。どちらも本質的には改行を表す文字リテラルですが、考慮すべきニュアンスがいくつかあります。
「n」と「'n'」の違い
次の主な違い「n」と「'n'」はその表現にあります。 「n」は 2 つの文字で構成される文字列リテラルであり、「'n'」は 1 つの改行文字を表す文字リテラルです。
ほとんどの場合、この 2 つのどちらを選択してもパフォーマンスに重大な影響はありません。ただし、効率が重要な懸念事項である場合は、「n」を使用すると、単一の文字が直接出力され、文字列処理の必要性がなくなるため、若干効率的になる可能性があります。
「 に対する std::endl の利点」 n" または文字リテラル
元々、std::endl は行終了とストリーム フラッシュの両方を提供するために使用されていました。ただし、最新の C 実装では、これはデフォルトの動作ではなくなりました。通常、フラッシュは std::cout が標準ストリーム (std::cin) に関連付けられている場合にのみ発生し、入力操作の前に出力が確実に表示されるようにします。
バッファのフラッシュが必要な場合は、 std::endl (" << endl") は、出力バッファを明示的にフラッシュし、データが基礎となるオペレーティング システムに書き込まれるようにします。
結論
C プログラミングの行終了には、「n」が信頼性が高く効率的なオプションのままです。文字リテラル「n」を使用すると、単一文字の改行効率がわずかに向上します。 Std::endl はバッファ フラッシュに対する追加の制御を提供しますが、バッファ フラッシュは必ずしも必要ではなく、パフォーマンスに影響を与える可能性があることに注意してください。最終的に、3 つのうちの選択は、特定のコード要件とパフォーマンスの優先順位によって決まります。
以上がC 行終端: `\\n`、`\'\\n\'`、または `std::endl – どれを使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。