Función de biblioteca C - fflush ()
Descripción
La función de la biblioteca C int fflush(FILE *stream) vacía el búfer de salida de una secuencia.
Declaración
A continuación se muestra la declaración de la función fflush ().
int fflush(FILE *stream)
Parámetros
stream - Este es el puntero a un objeto FILE que especifica una secuencia almacenada en búfer.
Valor devuelto
Esta función devuelve un valor cero en caso de éxito. Si ocurre un error, se devuelve EOF y se establece el indicador de error (es decir, feof).
Ejemplo
El siguiente ejemplo muestra el uso de la función fflush ().
#include <stdio.h>
#include <string.h>
int main () {
char buff[1024];
memset( buff, '\0', sizeof( buff ));
fprintf(stdout, "Going to set full buffering on\n");
setvbuf(stdout, buff, _IOFBF, 1024);
fprintf(stdout, "This is tutorialspoint.com\n");
fprintf(stdout, "This output will go into buff\n");
fflush( stdout );
fprintf(stdout, "and this will appear when programm\n");
fprintf(stdout, "will come after sleeping 5 seconds\n");
sleep(5);
return(0);
}
Compilemos y ejecutemos el programa anterior que producirá el siguiente resultado. Aquí el programa sigue almacenando búfer en la salida enbuff hasta que enfrente la primera llamada a fflush(), después de lo cual vuelve a comenzar a almacenar en búfer la salida y finalmente duerme durante 5 segundos. Envía la salida restante al STDOUT antes de que salga el programa.
Going to set full buffering on
This is tutorialspoint.com
This output will go into buff
and this will appear when programm
will come after sleeping 5 seconds