table of contents
FSEEK(3) | Manual do Programador Linux | FSEEK(3) |
NOME¶
fgetpos, fseek, fsetpos, ftell, rewind - reposiciona um fluxo
SINOPSE¶
#include <stdio.h>
int fseek( FILE *stream, long
offset, int whence);
long ftell( FILE *stream);
void rewind( FILE *stream);
int fgetpos( FILE *stream, fpos_t *pos);
int fsetpos( FILE *stream, fpos_t
*pos);
DESCRIÇÃO¶
A função fseek seta o indicador de posição de arquivo do fluxo apontado por stream. A nova posição, medida em bytes, é obtida pelo acréscimo de offset bytes à posição especificada por whence. Se whence é setado para SEEK_SET, SEEK_CUR, ou SEEK_END, o offset é relativo ao início do arquivo, ao indicador de posição corrente, ou ao fim de arquivo, respectivamente. Uma chamada bem-sucedida à função fseek limpa o indicador de fim de arquivo para o fluxo e desfaz qualquer efeito da função ungetc(3) no mesmo fluxo.
A função ftell obtém o valor corrente do indicador de posição de arquivo do fluxo apontado por stream.
A função rewind seta o indicador de posição de arquivo do fluxo apontado por stream para o início do arquivo. É equivalente a:
exceto pelo fato de que o indicador de erro do fluxo também é limpo (veja clearerr(3)).
As funções fgetpos e fsetpos são interfaces alternativas equivalentes a ftell e fseek (com whence setado para SEEK_SET), configurando e armazenando o valor corrente do offset do arquivo do objeto referenciado por pos. Em alguns sistemas não-UNIX, um objeto fpos_t pode ser um objeto complexo e estas rotinas podem ser a única maneira portável de reposicionar um fluxo de texto.
VALORES DE RETORNO¶
A função rewind não retorna valor. Em caso de término bem-sucedido, fgetpos, fseek, fsetpos retornam 0, e ftell retorna o offset corrente. Caso contrário, -1 é retornado e a variável global errno é setada para indicar o erro.
ERROS¶
- EBADF
- O fluxo especificado não é um fluxo vasculhável.
- EINVAL
- O argumento whence de fseek não era SEEK_SET, SEEK_END, ou SEEK_CUR.
As funções fgetpos, fseek, fsetpos, e ftell também podem falhar e setar errno para qualquer um dos erros especificados para as rotinas fflush(3), fstat(2), lseek(2), e malloc(3).
VEJA TAMBÉM¶
PADRÕES¶
As funções fgetpos, fsetpos, fseek, ftell, e rewind estão em conformidade com ANSI X3.159-1989 (``ANSI C'').
TRADUÇÃO PARA A LÍNGUA PORTUGUESA¶
RUBENS DE JESUS NOGUEIRA <darkseid99@usa.net> (tradução) XXXXXX XX XXXXX XXXXXXXX <xxxxxxxxxx@xxx.xxx> (revisão)
29 de novembro de 1993 | BSD MANPAGE |