Признак конца файла.

Признак конца файла приходится искать в файлах, открытых для чтения. Этот признак устанавливается в тот момент, когда в файле не осталось больше данных, которые можно считать.

Признак конца файла анализируется в выражении вида

while (! In_file.eof()) { … }

Для этой цели нельзя пользоваться циклом

do { … } while (! In_file.eof()), поскольку файл может оказаться пустым.

Однако проверка на конец файла не анализирует ошибки, которые могут встретиться в процессе чтения файла.

Для проверки как конца файла, так и наличия ошибок при его чтении пользуются условием выхода из цикла:

while (In_file.good()) { … }

Оператор цикла

while (In_file) { … }

выполняется до тех пор, пока нет ошибок, в том числе и конца файла (EOF).