Функцията fflush () в C ++ изтрива всички буферирани данни към съответното устройство.
Буферираните данни са временните или специфични за приложението данни, съхранявани във физическата памет на компютъра до определено време.
Функцията fflush () е дефинирана в заглавния файл.
fflush () прототип
int fflush (FILE * поток);
Ако потокът е изходен поток или поток за актуализация, чиято последна операция е била изведена, извикването на функцията fflush () ще напише всички буферирани неписани данни в свързаното изходно устройство.
Ако потокът е нулев указател, всички отворени изходни потоци се изтриват.
Поведението е неопределено за входни потоци и потоци за актуализация, чиято последна операция е била въведена.
fflush () Параметри
- поток: Потокът, който трябва да се промие.
fflush () Върната стойност
Функцията fflush () връща:
- Нула на успеха.
- EOF при неуспех и задава индикатора за грешка на файловия поток.
Пример: Как работи функцията fflush ()?
#include #include int main() ( int x; char buffer(1024); setvbuf(stdout, buffer, _IOFBF, 1024); printf("Enter an integer - "); fflush(stdout); scanf("%d",&x); printf("You entered %d", x); return(0); )
Когато стартирате програмата, изходът ще бъде:
Въведете цяло число - 2 Въведете 2
В горната програма опитайте да премахнете реда fflush(stdout)
и стартирайте програмата, за да видите ефекта от fflush. Низът "Въведете цяло число -" няма да бъде записан на екрана, освен ако не е изтрит.