feof()

feof() ist in der stdio definiert, die in C über stdio.h, bzw in C++ über cstdio eingebunden wird.

Funktion

feof() prüft, ob an einem Stream noch Daten anliegen oder der End-Of-File-Indikator gesetzt ist.

Signatur

#include <stdio.h>
int feof( FILE* file);

file: Zeiger auf geöffnete Datei/Stream, der geprüft werden soll, ob noch Daten anliegen

Return Value: 0, falls noch weitere Daten anliegen oder ein Wert ungleich 0, falls das Dateiende erreicht wurde.

Fehlerquellen

-

Beispiel

#include <stdio.h>
#include <stdlib.h>
 
int main (void)
{
  FILE *file = fopen("testfile.txt", "r");
 
  if( file )
  {
    char c;
 
    while( !feof( file ) )
    {
      c = fgetc( file );
 
      printf( "%d \'%c\'\n", c, c  );
    }
 
    fclose(file);
  }
 
  return EXIT_SUCCESS;
}

Ausgabe

Nehmen wir an, im gleichen Verzeichnis liegt die Datei 'testfile.txt' mit dem Inhalt „Hallo Welt\n“:

72 'H'
97 'a'
108 'l'
108 'l'
111 'o'
32 ' '
87 'W'
101 'e'
108 'l'
116 't'
10 '
'
-1 '�'

Das Dateiende wird erreicht (c ist -1) und der Indikator wird gesetzt - damit bricht die Schleife ab.

Siehe auch