C-Bibliotheksfunktionen -fgets()
C-Standardbibliothek - <stdio.h>
Beschreibung
C-Bibliotheksfunktionenchar *fgets(char *str, int n, FILE *stream)Liest eine Zeile aus dem angegebenen Stream und speichert sie instrin die Zeichenkette, auf die er zeigt. Beim Lesen(n-1)Wenn n Zeichen gelesen wurden oder wenn ein Zeilenumbruch auftritt oder wenn das Ende der Datei erreicht ist, wird gestoppt, je nachdem, was zuerst eintritt.
Deklaration
Das Folgende ist die Deklaration der Funktion fgets().
char *fgets(char *str, int n, FILE *stream)
Parameter
- str-- Dies ist ein Zeiger auf ein Zeichenarray, das die zu lesende Zeichenkette speichert.
- n-- Dies ist die maximale Anzahl der zu lesenden Zeichen (einschließlich des abschließenden Nullzeichens). Normalerweise wird die Länge des als str übergebenen Arrays verwendet.
- stream-- Dies ist ein Zeiger auf ein FILE-Objekt, das den Stream angibt, aus dem Zeichen gelesen werden sollen.
Rückgabewert
Bei Erfolg gibt die Funktion denselben Parameter str zurück. Wenn das Ende der Datei erreicht ist oder keine Zeichen gelesen wurden, bleibt der Inhalt von str unverändert und es wird ein Nullzeiger zurückgegeben.
Wenn ein Fehler auftritt, wird ein Nullzeiger zurückgegeben.
Beispiel
Das folgende Beispiel demonstriert die Verwendung der Funktion fgets().
Beispiel
int main()
{
FILE *fp;
char str[60];
/* Die Datei zum Lesen öffnen */
fp = fopen("file.txt" , "r");
if(fp == NULL) {
perror("Fehler beim Öffnen der Datei");
return(-1);
}
if( fgets (str, 60, fp)!=NULL ) {
/* Inhalt auf die Standardausgabe stdout schreiben */
puts(str);
}
fclose(fp);
return(0);
}
Angenommen, wir haben eine Textdateifile.txt, deren Inhalt wie folgt lautet. Die Datei dient im Beispiel als Eingabe:
We are in 2014
Lassen Sie uns das obige Programm kompilieren und ausführen, was das folgende Ergebnis erzeugt:
We are in 2014Weitere Erweiterungen