feof()
ist in der stdio
definiert, die in C über stdio.h
, bzw in C++ über cstdio
eingebunden wird.
feof()
prüft, ob an einem Stream noch Daten anliegen oder der End-Of-File-Indikator gesetzt ist.
#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.
-
#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.