これら、特別な3個のファイルについて、表1にまとめる。
fscanf()関数でファイルポインターとしてstdinを指定した場合、 scanf()と同じ動作をする。一方、fprintf()関数でファイルポインターとして stdoutを指定した場合、printf()と同じ動作をする。これを上手に使うと、プ ログラムのデバッグのときに便利である。
最後に標準エラー出力について述べる。標準エラー出力とは、エラーが発生した場合のメッ セージなどを出力先のことを言う。プログラム中で処理にエラーが発生した場合、そのメッ セージの出力先に指定する。printf()関数を使うよりも、fprintf()関数でファ イルポインターとしてstderrを指定した場合、printf関数と同じ動作をする。
fprintf(stderr, "ファイルの読み込みに失敗しました\n");
こうするとエラーメッセージのみ、リダイレクトすることができプログラムの保守性が上
がります。本当は、教科書p.309に書かれているperror()関数を使うのがもっとも良
いだろう。