コンパイルされた C プログラムの入力をリダイレクトする場合、プログラム内でこの入力を読み取る一般的な方法は何ですか? それは単にscanfですか?次のようなテキスト ファイルがあるとします。
1
2
3
4
各行に 1 つずつ、4 つの数字があります。プログラムの標準入力をリダイレクトしてこのファイルを読み取り、別のテキスト ファイルに複製するにはどうすればよいでしょうか。それぞれの新しい行は scanf を介して送信されますか?
コンパイルされた C プログラムの入力をリダイレクトする場合、プログラム内でこの入力を読み取る一般的な方法は何ですか? それは単にscanfですか?次のようなテキスト ファイルがあるとします。
1
2
3
4
各行に 1 つずつ、4 つの数字があります。プログラムの標準入力をリダイレクトしてこのファイルを読み取り、別のテキスト ファイルに複製するにはどうすればよいでしょうか。それぞれの新しい行は scanf を介して送信されますか?
ストリームのリダイレクトはOSの概念であり、 C言語とは関係ありません。標準入力ストリームstdin
であるから読み取ると、正しく処理されます。関数は暗黙的に使用されるため、コンソールから入力を取得するか、リダイレクトされたファイルから入力を取得するかに関係なく、プログラムは正常に動作します。scanf
stdin
Linux を使用している場合、リダイレクトは非常に簡単です。実行可能ファイル名がa.out
$ echo `a.out` > file.txt
a.out
からのすべての出力をにリダイレクトしますfile.txt