ferror(3)

NOME
clearerr, feof, ferror - verifica e redefine estado de um fluxo

BIBLIOTECA
Biblioteca C Padrão (libc, -lc)

SINOPSE
#include <stdio.h>

void clearerr(FILE *fluxo);
int feof(FILE *fluxo);
int ferror(FILE *fluxo);

DESCRIÇÃO
A função clearerr() limpa os indicadores de fim de arquivo (eof) e de erro para o fluxo.

A função feof() testa o indicador de fim de arquivo para o fluxo apontado por fluxo, retornando um valor diferente de zero se estiver definido. O indicador de fim de arquivo somente pode ser desligado apenas pela função clearerr().

A função ferror() testa o indicador de erro para o o fluxo apontado por fluxo, retornando um valor diferente de zero se estiver definido. O indicador de erro somente pode ser redefinido apenas pela função clearerr().

Para contrapartes não bloqueantes, veja unlocked_stdio(3).

VALOR DE RETORNO
A função feof() retorna diferente de zero se o indicador de fim de arquivo estiver definido para fluxo; caso contrário, retorna zero.

A função ferror() retorna diferente de zero se o indicador de erro estiver definido para fluxo; caso contrário, retorna zero.

ERROS
Estas funções não devem falhar e não definem errno.

ATRIBUTOS
Para uma explicação dos termos usados nesta seção, consulte attributes(7).
Interface | Atributo | Valor
clearerr(), feof(), ferror() | Thread safety | MT-Safe

PADRÕES
As funções clearerr(), feof() e ferror() estão de acordo com C99, POSIX.1-2001 e POSIX.1-2008.

NOTAS
POSIX.1-2008 especifica que essas funções não devem alterar o valor de errno se fluxo for válido.

CAVEATS
Normally, programs should read the return value of an input function, such as fgetc(3), before using functions of the feof(3) family. Only when the function returned the sentinel value EOF it makes sense to distinguish between the end of a file or an error with feof(3) or ferror(3).

VEJA TAMBÉM
open(2), fdopen(3), fileno(3), stdio(3), unlocked_stdio(3)

TRADUÇÃO
A tradução para português brasileiro desta página man foi criada por Felipe M Pereira <Felipe.Pereira@ic.unicamp.br>, 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).