明示的なループを使用せずに C で EOF まで cin からデータを読み取るにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-18 04:18:03
オリジナル
553 人が閲覧しました

How Can I Read Data from cin Until EOF in C   Without Explicit Loops?

ループなしで C で EOF まで Cin からデータを読み取る

ユーザー入力からファイルの終わりまでデータを読み取る効果的な方法を模索しています ( EOF) は、C プログラミングの一般的なタスクです。ただし、ループを使用せずにデータを走査するには課題があります。

考えられるアプローチの 1 つは、cin.get( input, ' ' ) を利用することです。ただし、この方法は、EOF または null 文字 (' ') のいずれか早い方の最初の出現で読み取りを終了するため、理想的ではない可能性があります。

包括的で信頼性の高いアプローチを実現するには、ループを使用します。推奨。 std::getline() 関数は便利な解決策を提供します。

std::string line;
while (std::getline(std::cin, line))
{
    std::cout << line << std::endl;
}
ログイン後にコピー

getline() 関数は入力を 1 行ずつ読み取り、デフォルトでは改行で終了します。代替の終了文字を指定できますが、EOF は文字自体を表すものではないため、EOF を直接ターゲットにすることはできません。

ループと getline() を併用することで、標準入力から EOF まで効率的にデータを読み取ることができます。に遭遇します。このアプローチは、EOF をチェックするための追加ロジックを必要とせずに、任意の量のデータを処理するための簡単で信頼性の高いメカニズムを提供します。

以上が明示的なループを使用せずに C で EOF まで cin からデータを読み取るにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート