Función de la biblioteca C -fflush()
Biblioteca estándar de C - <stdio.h>
Descripción
Función de la biblioteca Cint fflush(FILE *stream)Se utiliza para vaciar el búfer de salida.
fflush() es una función de la biblioteca estándar de C que escribe inmediatamente los datos del búfer en el archivo o dispositivo asociado con el flujo.
Para flujos de entrada, su comportamiento no está definido, por lo que se debe evitar llamar a esta función en un flujo de entrada.
Declaración
A continuación se muestra la declaración de la función fflush().
int fflush(FILE *stream)
Parámetros
stream-- Un puntero de tipo FILE que representa el flujo de destino cuyo búfer se debe vaciar. FILE es una estructura que representa un flujo de archivo abierto.
- Si
streamParaNULLentonces se vaciarán los búferes de todos los flujos de salida. - Si
streames un puntero de archivo, entonces se vaciará el búfer de salida de ese flujo de archivo.
- Si
Valor de retorno
Si el búfer se vacía correctamente,
fflush()devuelve 0.Si ocurre un error, devuelve
EOF, y se establece el indicador de error (ferror)。
Ejemplo
El siguiente ejemplo demuestra el uso de la función fflush().
Ejemplo
Explicación del código:
Abrir archivo: Usar
fopen()abrir un archivo llamadoexample.txtpara escritura.Escribir datos: Usar
fprintf()para escribir la cadena"Hello, World!"en el archivo.Vaciar el búfer: llamar a
fflush(fp)para asegurar que los datos se escriban inmediatamente en el archivo, en lugar de permanecer en el búfer.Comprobar el valor de retorno: Si
fflush()devuelve 0, significa que el búfer se vació correctamente; de lo contrario, significa que se produjo un error.Cerrar el archivo: Usar
fclose()para cerrar el archivo.
Los datos se escribieron correctamente en el archivo.
El programa abre el archivo example.txt y escribe la cadena "Hello, World!".
fflush(fp) vacía el búfer correctamente, devuelve 0, por lo tanto imprime "Datos escritos correctamente en el archivo".
El contenido del archivo example.txt será:
Hello, World!Otras extensiones