FSEEK(3S)
НАЗВАНИЕ
fseek, rewind, ftell - установка текущей позиции потока
СИНТАКСИС
#include <stdio.h>
int fseek (stream, offset, ptrname)
FILE *stream;
long offset;
int ptrname;
void rewind (stream)
FILE *stream;
long ftell (stream)
FILE *stream;
ОПИСАНИЕ
Функция fseek устанавливает позицию следующей операции
ввода/вывода для потока stream. Новая позиция находится
на расстоянии offset байт от начала, от текущей позиции
или от байта, содержащего признак конца файла в зависимости от значения аргумента ptrname (0, 1 или 2 соответственно). Если значение offset отрицательно, то новая позиция будет расположена левее точки отсчета.
Действие функции rewind (stream) совпадает с действием
функции fseek (stream, 0L, 0). Отличие только в том,
что функция rewind не возвращает никакого значения.
Функции fseek и rewind аннулируют действие функции
ungetc(3S).
В файле, открытом для чтения и записи, после вызова
функций fseek и rewind допустимы как операции чтения,
так и записи.
Функция ftell возвращает смещение текущей позиции относительно начала файла, ассоциированного с указанным потоком stream.
СМ. ТАКЖЕ
lseek(2), fopen(3S), popen(3S), stdio(3S), ungetc(3S).
ДИАГНОСТИКА
При неудачном завершении функция fseek возвращает ненулевое значение, в противном случае результат равен 0.
Неудача может об ясняться тем, что файл не был открыт
посредством функции fopen; в частности, функцию fseek
нельзя использовать для потоков, ассоциированных с терминалом, а также для файлов, открытых функцией
popen(3S).