Cette fonction teste si
une fin de fichier (EOF) a été détectée par une opération
précédente sur le fichier. Certaines fonctions ne
permettent pas de déterminer explicitement qu’une fin de fichier
a été atteinte. Ainsi gets() rend un
pointeur NULL dans
deux cas : la fin de fichier et une erreur. L’appel à feof permet
de lever le doute.
La valeur retournée par EOF est différente de 0 (true) si EOF a
été détectée et 0 sinon (false).
L’exemple suivant constitue un cas typique d’utilisation :
Certaines fonctions
(getc ou
getchar par
exemple) rendent soit le caractère lu, soit la
valeur EOF. On peut donc tester directement cette valeur
pour savoir si la fin de fichier a été atteinte.
(Voir l'entrée getchar
pour un exemple et la nécessité de déclarer le résultat
comme étant du type int et
non du typechar).