|
|
|
#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);
}