C ++ fflush () - Biblioteca C ++ Padrão

A função fflush () em C ++ libera todos os dados do buffer para o respectivo dispositivo.

Os dados em buffer são os dados temporários ou específicos do aplicativo armazenados na memória física do computador até um determinado momento.

A função fflush () é definida no arquivo de cabeçalho.

protótipo fflush ()

 int fflush (FILE * stream);

Se stream for um stream de saída ou stream de atualização cuja última operação foi produzida, chamar a função fflush () gravará quaisquer dados não gravados armazenados no dispositivo de saída associado.

Se stream for um ponteiro nulo, todos os streams de saída abertos serão liberados.

O comportamento é indefinido para fluxos de entrada e fluxos de atualização cuja última operação foi inserida.

Parâmetros fflush ()

  • stream: o stream a ser liberado.

fflush () Valor de retorno

A função fflush () retorna:

  • Zero em sucesso.
  • EOF em caso de falha e define o indicador de erro do fluxo de arquivos.

Exemplo: Como funciona a função fflush ()?

 #include #include int main() ( int x; char buffer(1024); setvbuf(stdout, buffer, _IOFBF, 1024); printf("Enter an integer - "); fflush(stdout); scanf("%d",&x); printf("You entered %d", x); return(0); )

Quando você executa o programa, a saída será:

 Insira um número inteiro - 2 Você inseriu 2

No programa acima, tente remover a linha fflush(stdout)e execute o programa para ver o efeito de fflush. A string "Digite um inteiro -" não será gravada na tela a menos que seja liberada.

Artigos interessantes...