Necesita un contexto para esta pregunta. En Windows, existe el concepto obsoleto de DOS de un verdadero "personaje EOF": Ctrl-Z. En realidad, no es posible distinguir uno "real" de uno "falso"; un archivo con una Ctrl-Z incrustada contendrá algunos datos ocultos finales desde la perspectiva de un programa que realmente está buscando Ctrl-Z como un carácter de fin de archivo. No intente escribir este tipo de código nunca más, no es necesario.
En la C API portátil y en UNIX, se utiliza un -1
de 32 bits para indicar el final del archivo, que no puede ser un carácter válido de 8 o 16 bits, por lo que es fácil diferenciarlo.
* No puede * tener un "carácter EOF" en el archivo. No existe tal cosa –
en DOS, y todavía puede haber en Windows. Ctrl-Z, o valor ASCII 26. Una aplicación de este tipo que aún produce archivos con caracteres 'EOF' es un producto llamado WinQuery de The Analytical Group. – STLDeveloper