#include <stdio.h>
int ferror(FILE *stream);
Функция ferror() проверяет наличие ошибки при работе с файлом, связанным с потоком stream. Нулевое значение, возвращаемое этой функцией, говорит о том, что никакой ошибки не обнаружено, а ненулевое значение означает ее наличие.
Чтобы определить природу ошибки, нужно воспользоваться функцией perror().
Пример
Следующий фрагмент программы приводит к аварийному прекращению ее работы при возникновении ошибки.
/*
Предполагается, что fp указывает на поток,
открытый для записи.
*/
while(!done) {
putc(info, fp);
if(ferror(fp)) {
printf("Ошибка при работе с файлом\n");
exit(1);
}
}
Зависимые функции
clearrer() feof() perror()