C ++ fgets () - C ++ Standardbibliothek

Die Funktion fgets () in C ++ liest eine angegebene maximale Anzahl von Zeichen aus dem angegebenen Dateistream.

fgets () Prototyp

 char * fgets (char * str, int count, FILE * stream);

Die fgets()Funktion liest maximal count-1Zeichen aus dem angegebenen Dateistream und speichert sie in dem Array, auf das str zeigt.

Die Analyse wird fortgesetzt, bis das Dateiende eintritt oder ein Zeilenumbruchzeichen ( n) gefunden wird. Das Array str enthält auch das Zeilenumbruchzeichen, falls es gefunden wird. Wenn kein Fehler auftritt, wird am Ende von str ein Nullzeichen geschrieben.

Es ist in der Header-Datei definiert.

fgets () Parameter

  • str: Zeiger auf ein Zeichenarray, in dem der Inhalt der Datei gespeichert ist.
  • count: Maximale Anzahl der zu schreibenden Zeichen.
  • stream: Der Dateistream zum Lesen der Zeichen.

fgets () Rückgabewert

  • Bei Erfolg gibt die Funktion fgets () str zurück und bei Fehler gibt sie den Nullzeiger zurück.
  • Wenn der Fehler auf den Zustand am Ende der Datei zurückzuführen ist, wird das eofKennzeichen gesetzt. In diesem Fall wird der Inhalt von str nicht geändert.
  • Wenn der Fehler auf einen anderen Fehler zurückzuführen ist, wird die Fehleranzeige gesetzt. In diesem Fall ist der Inhalt von str unbestimmt. Sie dürfen nicht einmal nullterminiert werden.

Beispiel: Funktionsweise von fgets ()

 #include #include using namespace std; int main() ( int count = 10; char str(10); FILE *fp; fp = fopen("file.txt","w+"); fputs("An example file", fp); fputs("Filename is file.txt", fp); rewind(fp); while(feof(fp) == 0) ( fgets(str,count,fp); cout << str << endl; ) fclose(fp); return 0; )

Wenn Sie das Programm ausführen, ist eine mögliche Ausgabe:

 Eine Beispieldatei Dateiname ist file.t xt

Interessante Beiträge...