ストリームのエラーをテストします。Tests for an error on a stream.


int ferror(
   FILE *stream


FILE 構造体へのポインター。Pointer to FILE structure.

戻り値Return Value

ストリームでエラーが発生しなかった場合、 ferrorは0を返します。If no error has occurred on stream, ferror returns 0. それ以外の場合は、0 以外の値を返します。Otherwise, it returns a nonzero value. Stream がNULLの場合、 ferrorは、「パラメーターの検証」で説明されているように、無効なパラメーターハンドラーを呼び出します。If stream is NULL, ferror invokes the invalid parameter handler, as described in Parameter Validation. 実行の継続が許可された場合、この関数はerrnoEINVALに設定し、0を返します。If execution is allowed to continue, this function sets errno to EINVAL and returns 0.

エラー コードの詳細については、「_doserrno、errno、_sys_errlist、および _sys_nerr」を参照してください。See _doserrno, errno, _sys_errlist, and _sys_nerr for more information on these, and other, error codes.


Ferrorルーチン (関数とマクロの両方として実装されます) は、ストリームに関連付けられているファイルに対して読み取りまたは書き込みエラーが発生したかどうかをテストします。The ferror routine (implemented both as a function and as a macro) tests for a reading or writing error on the file associated with stream. エラーが発生した場合、ストリームが閉じられるか巻き戻されるか、またはそのストリームに対してclearerrが呼び出されるまで、ストリームのエラーインジケーターが設定されたままになります。If an error has occurred, the error indicator for the stream remains set until the stream is closed or rewound, or until clearerr is called against it.

既定では、この関数のグローバル状態はアプリケーションにスコープが設定されています。By default, this function's global state is scoped to the application. これを変更するには、「 CRT でのグローバル状態」を参照してください。To change this, see Global state in the CRT.


関数Function 必須ヘッダーRequired header
ferrorferror <stdio.h><stdio.h>

互換性の詳細については、「互換性」を参照してください。For additional compatibility information, see Compatibility.


feof」の例を参照してください。See the example for feof.

関連項目See also

エラー処理Error Handling
ストリーム入出力Stream I/O
fopen、_wfopenfopen, _wfopen
perror、_wperrorperror, _wperror