Funkcja fsetpos () w C ++ ustawia wskaźnik pliku skojarzony ze strumieniem na daną pozycję.
Prototyp fsetpos ()
int fsetpos (PLIK * strumień, const fpos_t * pos);
fsetpos()
Funkcja przyjmuje strumienia pliku oraz wskaźnik do obiektu fpos_t otrzymanego z wywołania fgetpos () jako argument.
- Wywołanie
fsetpos()
funkcji anuluje efektyungetc
i czyści stan końca pliku, jeśli jest ustawiony. - W przypadku jakiegokolwiek błędu odczytu lub zapisu
ferror
ustawiany jest wskaźnik błędu, np. Dla strumienia.
Jest zdefiniowany w pliku nagłówkowym.
Parametry fsetpos ()
- stream: strumień pliku, którego pozycja ma zostać ustawiona.
- pos: Wartość pozycji uzyskana z poprzedniego wywołania fgetpos, która wskazuje pozycję wskaźnika pliku w tym momencie.
fsetpos () Zwracana wartość
Po pomyślnym zakończeniu fsetpos()
funkcja zwraca zero, w przeciwnym razie wartość niezerową.
Przykład: Jak działa funkcja fsetpos ()
#include int main() ( FILE *fp; fpos_t pos; int c; fp = fopen("myfile.txt","w+"); fputs("What a boring day!",fp); fgetpos(fp, &pos); fputs("The weather is bad",fp); fsetpos(fp, &pos); /* Replaces the second line by new string */ fputs("It is raining badly.",fp); rewind(fp); while(!feof(fp)) ( c = getc(fp); putchar(c); ) fclose(fp); return 0; )
Po uruchomieniu programu wynik będzie następujący:
Co za nudny dzień! Bardzo pada.