Funkcia fgets () v C ++ načíta zadaný maximálny počet znakov z daného toku súborov.
prototyp fgets ()
char * fgets (char * str, int count, FILE * stream);
fgets()
Funkcia číta maximálne count-1
postáv z daného streamu súboru a ukladá ich do poľa odkazuje ul.
Analýza pokračuje, kým nenastane koniec súboru alebo kým sa nenájde znak nového riadku ( n). Str pole bude obsahovať znak nového riadku aj v prípade, že sa nájde. Pokiaľ nedôjde k chybe, na koniec str sa napíše nulový znak.
Je definované v hlavičkovom súbore.
fgets () parametre
- str: Ukazovateľ na pole znakov, ktoré uchováva obsah súboru.
- počet: Maximálny počet znakov na zápis.
- stream: Stream súborov na čítanie znakov.
fgets () Návratová hodnota
- Pri úspechu funkcia fgets () vráti str a pri zlyhaní vráti nulový ukazovateľ.
- Ak je porucha spôsobená stavom konca súboru, nastaví sa
eof
indikátor. V takom prípade sa obsah str nezmení. - Ak je porucha spôsobená inou chybou, nastaví indikátor chyby. V takom prípade je obsah str neurčitý. Môžu byť dokonca neplatné.
Príklad: Ako funguje funkcia 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; )
Po spustení programu bude možný výstup:
Príkladom súboru Názov súboru je súbor.t xt