fseek

FSEEK(3)                 Manual do Programador do Linux                 FSEEK(3)



NOME
       fgetpos, fseek, fsetpos, ftell, rewind - reposiciona um fluxo

SINOPSE
       #include <stdio.h>

       int fseek(FILE *fluxo, long deslocamento, int de_onde);

       long ftell(FILE *fluxo);

       void rewind(FILE *fluxo);

       int fgetpos(FILE *fluxo, fpos_t *pos);

       int fsetpos(FILE *fluxo, const fpos_t *pos);

DESCRIÇÃO
       A função fseek() define o indicador de posição de arquivo do fluxo
       apontado por fluxo. A nova posição, medida em bytes, é obtida pelo
       acréscimo de deslocamento bytes à posição especificada por de_onde. Se
       de_onde é definido para SEEK_SET, SEEK_CUR ou SEEK_END, o deslocamento é
       relativo ao início do arquivo, ao indicador de posição atual, 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 fluxo.

       A função rewind() define o indicador de posição de arquivo do fluxo
       apontado por fluxo para o início do arquivo. É equivalente a:

              (void) fseek(stream, 0L, SEEK_SET)

       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 de_onde definido para SEEK_SET), definindo e
       armazenando o valor atual do deslocamento 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.

VALOR 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
       deslocamento atual. Caso contrário, -1 é retornado e errno é definido
       para indicar o erro.

ERROS
       EINVAL O argumento de_onde de fseek() não era SEEK_SET, SEEK_END ou
              SEEK_CUR. Ou: o deslocamento de arquivo resultando seria negativo.

       ESPIPE O descritor de arquivo subjacente ao fluxo não é pesquisável (por
              exemplo, ele se refere a um encadeamento, FIFO ou soquete).

       As funções fgetpos(), fseek(), fsetpos() e ftell() também podem falhar e
       definir errno para qualquer um dos erros especificados para as rotinas
       fflush(3), fstat(2), lseek(2) e malloc(3).

ATRIBUTOS
       Para uma explicação dos termos usados nesta seção, consulte
       attributes(7).

       ┌────────────────────────────┬───────────────┬─────────┐
       │Interface                   Atributo      Valor   │
       ├────────────────────────────┼───────────────┼─────────┤
       │fseek(), ftell(), rewind(), │ Thread safety │ MT-Safe │
       │fgetpos(), fsetpos()        │               │         │
       └────────────────────────────┴───────────────┴─────────┘

DE ACORDO COM
       POSIX.1-2001, POSIX.1-2008, C89, C99.

VEJA TAMBÉM
       lseek(2), fseeko(3)

COLOFÃO
       Esta página faz parte da versão 5.10 do projeto Linux man-pages. Uma
       descrição do projeto, informações sobre relatórios de bugs e a versão
       mais recente desta página podem ser encontradas em
       https://www.kernel.org/doc/man-pages/.


TRADUÇÃO
       A tradução para português brasileiro desta página man foi criada por
       Rubens de Jesus Nogueira <darkseid99@usa.net>, André Luiz Fassone
       <lonely_wolf@ig.com.br> e Rafael Fontenelle <rafaelff@gnome.org>.

       Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU
       Versão 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ ou posterior para as
       condições de direitos autorais.  Nenhuma responsabilidade é aceita.

       Se você encontrar algum erro na tradução desta página de manual, envie um
       e-mail para a lista de discussão de tradutores ⟨debian-l10n-portuguese@
       lists.debian.org⟩.



GNU                               30 abril 2018                         FSEEK(3)