CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
fflush
fflush
Функция Сбрасывает поток. Синтаксис #include<stdio.h> int fflush(FILE * stream); Файл, содержащий stdio.h прототип Описание Функция fflush записывает в файл содержимое буфера, связанного с потоком stream, если он был открыт на вывод. fflush не оказывает влияния на небуферизованные потоки. Возвращаемое В случае успешного завершения возвращает 0. При значение ошибке возвращает EOF. Переносимость Поддерживается стандартом ANSI C и совместима с UNIX. Смотрите также fclose, flushall, setbuf, setvbuf. Пример: #include<string.h> #include<stdio.h> #include<conio.h> #include<io.h> void flush(FILE *stream); int main(void) { FILE *stream; char msg[] = "Тестовый пример"; /* создать файл */ stream = fopen("DUMMY.FIL","w"); /* записать в файл данные */ fwrite(msg,strlen(msg),1,stream); clrscr(); printf("Для сброса потока нажмите любую клавишу ...\n"); getch(); /* сбросить данные в файл, без его закрытия */ flush(stream); printf("Содержимое буферов сброшено в файл\n"); printf("Для завершения нажмите любую клавишу\n"); getch(); return 0; } void flush(FILE *stream) { int duphandle; /* сбросить внутренние буфера файла */ fflash(stream); /* создать второй дескриптор */ duphandle = dup(fileno(stream)); /* закрыть второй дескриптор для сброса буферов DOS */ close(duphandle); }