ユーザーが入力したファイル ( 経由stdin
) が存在するかどうかをチェックする関数を C で書くのに苦労しています。たとえば、プログラムが として実行されて./a.out <myfile.txt
いる場合、このファイルが存在しない場合は false を返すようにします。ファイルを引数として渡すことでこれを行うことができます (つまり./a.out myfile.txt
)using を使用fopen()
しますが、「stdin」を使用してこれを行う方法がわかりません (つまり./a.out <myfile.txt
)
明確にするために:
より大きなプログラムは、テキスト ファイルの内容を取得し、それに対してアクションを実行することになっています。このプログラムは、コマンド ラインで として実行する必要があります./a.out arg1 arg2 <myfile.txt
。./a.out arg1 arg2
ユーザーがorとしてプログラムを実行した場合./a.out
(つまり、アクションを実行するファイルを指定していない場合)、ユーザーにファイルを含めるように求めます (<
引数として渡されずに stdin を使用)。