Учись программированию на C++ Builder бесплатно!

Функция


Позиционирует указатель текущей позиции в файле, связанном с потоком stream.

Синтаксис


#include<stdio.h>
int fsetpos(FILE *stream, const fpos_t *pos);

Прототип


stdio.h

Описание


Функция fsetpos устанавливает указатель текущей позиции файла, связанного с потоком stream в новую позицию, которая определяется значением, получаемым предшествующим вызовом функции fgetpos. Функция fsetpos также сбрасывает признак конца файла, но не оказывает влияния на символы, помещаемые в поток функцией ungetc. После вызова fsetpos можно производить как операции ввода, так и вывода.

Возвращаемое значение


При успешном завершении fsetpos возвращает 0. При возникновении ошибки она возвращает ненулевое значение и устанавливает errno не равным 0.

Переносимость


Функция fsetpos поддерживается стандартом ANSI C.

Пример


#include<stdlib.h>
#include<stdio.h>

void showpos(FILE *stream);

int main(void)
{
FILE *stream;
fpos_t filepos;
/* открыть файл для изменения */
stream = fopen("DUMMY.FIL","w+");
/* сохранить текущую позицию указателя */
fgetpos(stream,&filepos);
/* записать в файл данные */
fprintf("stream,"Это тест");
/* вывести текущую позицию */
showpos(stream);
/* установить новую позицию и вывести ее */
if(fsetpos(stream,&filepos) == 0)
showpos(stream);
else
{
fpritf(stderr,"Ошибка указателя файла\n");
exit(1);
}
/* закрыть файл */
fclose(stream);
return 0;
}
void showpos(FILE *stream)
{
fpos_t pos;
/* вывести текущее положение указателя */
fgetpos(stream,&pos);
printf("Позиция указателя: %ld\n",pos);
}

Поиск по сайту