fflush(3)

NOME
fflush - descarrega um fluxo

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

SINOPSE
#include <stdio.h>

int fflush(FILE *_Nullable stream);

DESCRIÇÃO
For output streams, fflush() forces a write of all user-space buffered data for the given output or update stream via the stream's underlying write function.

For input streams associated with seekable files (e.g., disk files, but not pipes or terminals), fflush() discards any buffered data that has been fetched from the underlying file, but has not been consumed by the application.

The open status of the stream is unaffected.

Se o argumento stream é NULO, fflush() descarrega todas os fluxos de saída abertas.

Para uma contraparte não-bloqueante, veja unlocked_stdio(3).

VALOR DE RETORNO
Upon successful completion 0 is returned. Otherwise, EOF is returned and errno is set to indicate the error.

ERROS

EBADF
    stream não é um fluxo aberto, ou não está aberto para gravação.

The function fflush() may also fail and set errno for any of the errors specified for write(2).

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

PADRÕES
C11, POSIX.1-2008.

HISTÓRICO
C89, POSIX.1-2001, POSIX.1-2008.

POSIX.1-2001 did not specify the behavior for flushing of input streams, but the behavior is specified in POSIX.1-2008.

NOTAS
Note que fflush() apenas descarrega os buffers de espaço do usuário fornecidos pela biblioteca do C. Para garantir que os dados estão fisicamente armazenados no disco, os buffers do kernel devem ser descarregados também, por exemplo, com sync(2) ou fsync(2).

VEJA TAMBÉM
fsync(2), sync(2), write(2), fclose(3), fileno(3), fopen(3), fpurge(3), setbuf(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> e André Luiz Fassone <lonely_wolf@ig.com.br>

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