#include <stdio.h> int fflush(FILE *stream);
Если поток stream связан с файлом, открытым для записи, то при обращении к функции fflush() в этот файл будет физически записано содержимое выходного буфера. При этом файл остается открытым.
Нулевое значение, возвращаемое функцией, свидетельствует о ее успешном выполнении, а значение EOF — о возникновении ошибки при записи.
При нормальном завершении программы или при заполнении буферов все их coдержимое автоматически дозаписывается в файл. Кроме того, буфер дозаписывается в файл при закрытии файла.
Приведенный фрагмент программы дозаписывает в файл содержимое буфера после каждой операции записи.
/* Предполагается, что fp связан с выходным файлом. */ for(i=0; i<MAX; i++) { fwrite(buf, sizeof(some_type), 1, fp); fflush(fp); }