ループなしで 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 サイトの他の関連記事を参照してください。