C feof() function

C library function - feof()

The feof() function indicates whether the end-of-file flag is set for the given stream.


int feof(FILE *stream)

feof() Parameters:

Name Description Required /Optional
stream Identifies an address for a file descriptor, which is an area of memory associated with an input or output stream. Required

Return value from feof()

  • The feof() function shall return non-zero if and only if the end-of-file indicator is set for stream.

Example: feof() function

This example read a text file until it reads an end-of-file character.

#include <stdio.h>

int main () {
   FILE *fp;
   int c;
   fp = fopen("file.txt","r");
   if(fp == NULL) {
      perror("Error in opening file");
   while(1) {
      c = fgetc(fp);
      if( feof(fp) ) { 
         break ;
      printf("%c", c);


c Programming1
c Programming2
c Programming3

C Programming Code Editor:

Previous C Programming: C clearerr()
Next C Programming: C ferror()

Share this Tutorial / Exercise on : Facebook and Twitter

C Programming: Tips of the Day

What's an object file in C?

An object file is the real output from the compilation phase. It's mostly machine code, but has info that allows a linker to see what symbols are in it as well as symbols it requires in order to work. (For reference, "symbols" are basically names of global objects, functions, etc.)

A linker takes all these object files and combines them to form one executable (assuming that it can, i.e.: that there aren't any duplicate or undefined symbols). A lot of compilers will do this for you (read: they run the linker on their own) if you don't tell them to "just compile" using command-line options. (-c is a common "just compile; don't link" option.)

Ref : https://bit.ly/3CbzF8M