Η συνάρτηση fflush () στο C ++ ξεπλένει τυχόν αποθηκευμένα δεδομένα στην αντίστοιχη συσκευή.
Τα προσωρινά αποθηκευμένα δεδομένα είναι τα προσωρινά ή συγκεκριμένα δεδομένα που αποθηκεύονται στη φυσική μνήμη του υπολογιστή μέχρι ένα συγκεκριμένο χρονικό διάστημα.
Η συνάρτηση fflush () ορίζεται στο αρχείο κεφαλίδας.
πρωτότυπο fflush ()
int fflush (ροή FILE *);
Εάν η ροή είναι μια ροή εξόδου ή μια ροή ενημέρωσης της οποίας η τελευταία λειτουργία ήταν εξερχόμενη, η κλήση της συνάρτησης fflush () θα εγγράψει τυχόν αποθηκευμένα μη γραπτά δεδομένα στη σχετική συσκευή εξόδου.
Εάν η ροή είναι μηδενικός δείκτης, όλες οι ανοιχτές ροές εξόδου ξεπλένονται.
Η συμπεριφορά δεν είναι καθορισμένη για ροές εισόδου και ροές ενημέρωσης των οποίων η τελευταία λειτουργία ήταν εισαγωγή.
fflush () Παράμετροι
- stream: Η ροή που πρέπει να ξεπλυθεί.
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. Η συμβολοσειρά "Enter a integer -" δεν θα γραφτεί στην οθόνη, εκτός εάν έχει ξεπλυθεί.