FERROR(3) Manual do Programador do Linux FERROR(3)

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

#include <stdio.h>

void clearerr(FILE *fluxo);

int feof(FILE *fluxo);

int ferror(FILE *fluxo);

int fileno(FILE *fluxo);

Requisitos de macro de teste de recursos para o glibc (consulte feature_test_macros(7)):

fileno(): _POSIX_C_SOURCE

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().

A função fileno() examina o argumento fluxo e retorna o descritor de arquivo inteiro usado para implementar este fluxo. O descritor de arquivo ainda pertence a fluxo e será fechado quando fclose(3) for chamada. Duplique o descritor de arquivo com dup(2) antes de passá-lo para o código que pode fechá-lo.

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

Estas funções não devem falhar e não ajustam a variável externa errno. (Entretanto, no caso de fileno() detectar que o argumento não é um fluxo válido, deve retornar -1 e definir errno para EBADF).

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

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

A função fileno() está de acordo com POSIX.1-2001 e POSIX.1-2008.

open(2), fdopen(3), stdio(3), unlocked_stdio(3)

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/.

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 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.

6 março 2019