Программирование на C и C++

Онлайн справочник программиста на C и C++

feof

int feof(FILE *stream)

Прототип: 
Описание: 

Макросом feof() контролируется указатель положения в файле — для того, чтобы установить, достигнут ли конец файла, связанный с потоком stream. Если указатель положения в файле нахо­дится в конце файла, то возвращается ненулевое значение; в противном случае возвращается нуль.

Если конец файла был уже достигнут, то последующие операции чтения будут возвращать EOF до одного из двух событий: вызова rewind() или смещения указателя положения в файле с помо­щью fseek().

Макрос особенно полезен при работе с двоичными файлами, поскольку маркер конца файла — также допустимое двоичное целое число. Для определения момента достижения конца файла необходимо в явной форме вызывать feof(), а не просто проверять переменную, возвращаемую, например, функцией getc().

Пример: