feof : <stdio.h> library function

The function int feof(FILE *stream); checks the state of end-of-File indicator associated with stream. Once the file position indicator reaches the end of the file, any further read operations will return EOF.
End of file indicator for a stream can be cleared by a call to rewind, fseek, clearerr, freopen or fsetpos.

Function prototype of feof

int feof(FILE *stream);
  • stream : A pointer to a FILE object which identifies a stream.

Return value of feof

This function returns a non-zero value if the end of file indicator for the stream is set, zero is returned otherwise.

C program to show the use of feof function

The following program shows the use of feof function to traverse the file from start till end of the file. Let file "textFile.txt" contains "feof C Standard Library function" string. The content of this file will get printed by the following program.

#include <stdio.h>

int main(){
   FILE *file;
   int c;
   file = fopen("textFile.txt","r");
   if(file == NULL){
      perror("Error: Unable to open a file");
   } else {
          c = fgetc(file);
          printf("%c", c);

Program Output
feof C Standard Library function