Функция fsetpos () в C ++ устанавливает указатель файла, связанный с потоком, в заданную позицию.
прототип fsetpos ()
int fsetpos (ФАЙЛ * поток, const fpos_t * pos);
fsetpos()
Функция принимает поток файла и указатель на объект fpos_t , полученный из вызова fgetpos () в качестве аргумента.
- Вызов
fsetpos()
функции отменяет действиеungetc
и очищает состояние конца файла, если оно установлено. - В случае любой ошибки чтения или записи устанавливается индикатор ошибки, то есть
ferror
для потока.
Это определено в заголовочном файле.
Параметры fsetpos ()
- stream: файловый поток, позиция которого должна быть установлена.
- pos: значение позиции, полученное в результате предыдущего вызова fgetpos, которое указывает позицию указателя файла в данный момент.
fsetpos () Возвращаемое значение
В случае успеха fsetpos()
функция возвращает ноль, в противном случае - ненулевое значение.
Пример: как работает функция 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; )
Когда вы запустите программу, вывод будет:
Какой скучный день! Идёт сильный дождь.