Funkce fgets () v C ++ čte zadaný maximální počet znaků z daného proudu souboru.
fgets () prototyp
char * fgets (char * str, int count, FILE * stream);
fgets()
Funkce čte maximálně count-1
postav z daného streamu souboru a ukládá je do pole odkazuje ul.
Analýza pokračuje, dokud nenastane konec souboru nebo dokud nebude nalezen znak nového řádku ( n). Str pole bude obsahovat znak nového řádku také v případě, že je nalezen. Pokud nedojde k žádné chybě, je na konec str zapsán nulový znak.
Je definován v hlavičkovém souboru.
fgets () Parametry
- str: Ukazatel na pole znaků, které ukládá obsah souboru.
- count: Maximální počet znaků pro zápis.
- stream: Stream souborů pro čtení znaků.
fgets () Návratová hodnota
- Při úspěchu vrátí funkce fgets () str a při selhání vrátí nulový ukazatel.
- Pokud je porucha způsobena stavem konce souboru, nastaví
eof
indikátor. V tomto případě se obsah str nezmění. - Pokud je porucha způsobena nějakou jinou chybou, nastaví indikátor chyby. V tomto případě je obsah str neurčitý. Nemusí být ani ukončeny nulou.
Příklad: Jak funguje funkce 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; )
Při spuštění programu bude možný výstup:
Příkladem souboru Název souboru je soubor.t xt