Funkcja fgets () w C ++ odczytuje określoną maksymalną liczbę znaków z podanego strumienia pliku.
prototyp fgets ()
char * fgets (char * str, liczba int, PLIK * strumień);
fgets()
Odczytuje maksymalnie count-1
znaków z danego strumienia pliku i zapisuje je w tablicy wskazywanej przez ul.
Przetwarzanie jest kontynuowane do momentu wystąpienia końca pliku lub znalezienia znaku nowej linii ( n). Tablica będzie zawierała również znak nowego wiersza na wypadek, gdyby został znaleziony. Jeśli nie wystąpi błąd, na końcu str.
Jest zdefiniowany w pliku nagłówkowym.
fgets () Parametry
- str: Wskaźnik do tablicy znaków, która przechowuje zawartość pliku.
- count: maksymalna liczba znaków do zapisania.
- stream: strumień plików do odczytu znaków.
fgets () Zwracana wartość
- Po pomyślnym zakończeniu funkcja fgets () zwraca str, aw przypadku niepowodzenia zwraca wskaźnik zerowy.
- Jeśli awaria jest spowodowana stanem końca pliku, ustawia
eof
wskaźnik. W tym przypadku zawartość str nie jest zmieniana. - Jeśli awaria jest spowodowana innym błędem, ustawia wskaźnik błędu. W tym przypadku zawartość str jest nieokreślona. Mogą nawet nie zostać zakończone zerowo.
Przykład: Jak działa funkcja 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 uruchomieniu programu możliwe wyjście to:
Przykładowy plik Nazwa pliku to plik.t xt