I denne oppskrivningen vil vi forklare FFLush () -funksjonen i C-programmering ved hjelp av eksempler.
Hva er fflush () -funksjon i C -programmering
Før vi forstår fflush (), vil vi forstå hva som er en buffer? La oss vurdere et eksempel; Vi ser på en sesong på Netflix, Netflix buffer kontinuerlig innholdet i videoen de neste minuttene, så du trenger ikke å vente på at videoen skal laste, denne nedlastingen er kjent som buffering. I C -programmering fungerer bufferen på samme måte. De lagrede verdiene i bufferen kan bli årsaken til uventede resultater.
For å tømme bufferen bruker vi FFLush () -funksjonen. La oss vurdere et eksempel:
#inkludereSkriv inn koden i tekstfilen, testfil.C, og samler denne filen ved hjelp av en kompilator, ettersom vi bruker Linux, slik at vi samler filen ved hjelp av GCC -kompilatoren:
$ GCC TestFile.C -o Testfile
Filen er samlet uten feil og advarsler, så vi vil utføre koden ovenfor
$ ./testfile
Utgangen fra filen ovenfor er ikke forventet, ”dette er Linuxhint.”Bør skrives ut før“ dette handler om fflush () ”, men det skjedde ikke. Fordi "stdout" er som standard en buffer, så den vil lagre verdiene i den midlertidige bufferen, mens stderr ikke er buffret, så den viste utgangen umiddelbart, og stdout vil vise utgangen fra filen fra bufferminnet enten når programmet ender eller den nye linjeterminatoren (“\ n”) brukes.
I henhold til dette vises utgangen i uventet rekkefølge, for å skrive den ut på en sortert måte, vil vi bruke FFLUSH () -funksjonen:
#inkludereSett sammen filen ved hjelp av GCC -kompilatoren:
$ GCC TestFile.C -o Testfile
Utfør filen ved hjelp av kommandoen:
$ ./testfile
Nå er resultatene sortert fordi FFLush () ryddet det buffrede minnet og viste utgangen.
Konklusjon
FFLush () -funksjonen brukes til å tømme bufferminnet og vise resultatene fra OutputStream (stdout). I denne oppskrivningen har vi forklart FFLush () -funksjonen i C-programmering ved hjelp av eksempler. FLUSH () -funksjonen anbefales å bruke med stdout fordi stdout er som standard en buffer og lagrer dataene i det midlertidige bufferminnet.