🔧 入出力 ・ stdio.h ・ C89
ferror の使い方int ferror(FILE *stream);
直前のストリーム操作でエラーが発生したかどうかを調べる。feofと対で使い、読み込みが止まった理由が終端かエラーかを区別するために使う診断用の関数。 エラー発生後もストリームの状態はクリアされないため、再試行前にclearerrで状態を戻す必要がある。
#include <stdio.h>
int main(void) {
FILE *fp = fopen("data.txt", "r");
char buf[16];
if (fp) {
fread(buf, 1, sizeof buf, fp);
if (ferror(fp)) puts("read error");
fclose(fp);
}
return 0;
}
アプリの関数リファレンスで引く(無料・登録不要) 関数一覧へ
ferror と一緒に使う関数fclose
feof
fflush
fgetc
fgets
fopen
fprintf
fputc
fputs
fread
fscanf
fseek
ftell
fwrite
getchar
gets_s
もっと先へ:ポインタ・メモリ・ファイル入出力・セキュアコーディングを含む全26トラックと、段位検定・模試のフルセットは完全版に収録しています。