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