fseek(3) Library Functions Manual fseek(3) NOME fgetpos, fseek, fsetpos, ftell, rewind - reposiciona um fluxo BIBLIOTECA Biblioteca C Padrao (libc, -lc) SINOPSE #include int fseek(FILE *fluxo, long deslocamento, int de_onde); long ftell(FILE *stream); void rewind(FILE *fluxo); int fgetpos(FILE *restrict fluxo, fpos_t *restrict pos); int fsetpos(FILE *fluxo, const fpos_t *pos); DESCRICAO A funcao fseek() define o indicador de posicao de arquivo do fluxo apontado por fluxo. A nova posicao, medida em bytes, e obtida pelo acrescimo de deslocamento bytes a posicao especificada por de_onde. Se de_onde e definido para SEEK_SET, SEEK_CUR ou SEEK_END, o deslocamento e relativo ao inicio do arquivo, ao indicador de posicao atual, ou ao fim de arquivo, respectivamente. Uma chamada bem sucedida a funcao fseek() limpa o indicador de fim de arquivo para o fluxo e desfaz qualquer efeito da funcao ungetc(3) no mesmo fluxo. A funcao ftell() obtem o valor corrente do indicador de posicao de arquivo do fluxo apontado por fluxo. A funcao rewind() define o indicador de posicao de arquivo do fluxo apontado por fluxo para o inicio do arquivo. E equivalente a: (void) fseek(stream, 0L, SEEK_SET) exceto pelo fato de que o indicador de erro do fluxo tambem e limpo (veja clearerr(3)). As funcoes fgetpos() e fsetpos() sao 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 nao-UNIX, um objeto fpos_t pode ser um objeto complexo e estas rotinas podem ser a unica maneira portavel de reposicionar um fluxo de texto. Se o fluxo se referir a um arquivo regular e o deslocamento do fluxo resultante estiver alem do tamanho do arquivo, as gravacoes subsequentes estenderao o arquivo com um furo, ate o deslocamento, antes de confirmar qualquer dado. Consulte lseek(2) para obter detalhes sobre a semantica de busca de arquivos. VALOR DE RETORNO A funcao rewind() nao retorna valor. Em caso de termino bem-sucedido, fgetpos(), fseek(), fsetpos() retornam 0, e ftell() retorna o deslocamento atual. Caso contrario, -1 e retornado e errno e definido para indicar o erro. ERROS EINVAL O argumento de_onde de fseek() nao era SEEK_SET, SEEK_END ou SEEK_CUR. Ou: o deslocamento de arquivo resultando seria negativo. ESPIPE O descritor de arquivo subjacente ao fluxo nao e pesquisavel (por exemplo, ele se refere a um encadeamento, FIFO ou soquete). As funcoes fgetpos(), fseek(), fsetpos() e ftell() tambem 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 explicacao dos termos usados nesta secao, consulte attributes(7). +--------------------------------------------+---------------+---------+ |Interface | Atributo | Valor | +--------------------------------------------+---------------+---------+ |fseek(), ftell(), rewind(), fgetpos(), | Thread safety | MT-Safe | |fsetpos() | | | +--------------------------------------------+---------------+---------+ PADROES C11, POSIX.1-2008. HISTORICO POSIX.1-2001, C89. VEJA TAMBEM lseek(2), fseeko(3) TRADUCAO A traducao para portugues brasileiro desta pagina man foi criada por Rubens de Jesus Nogueira , Andre Luiz Fassone e Rafael Fontenelle . Esta traducao e uma documentacao livre; leia a Licenca Publica Geral GNU Versao 3 ou posterior para as condicoes de direitos autorais. Nenhuma responsabilidade e aceita. Se voce encontrar algum erro na traducao desta pagina de manual, envie um e-mail para a lista de discussao de tradutores . Linux man-pages 6.06 31 outubro 2023 fseek(3)