Sergio94
Utente Èlite
- 3,970
- 354
- CPU
- AMD Ryzen 7 2700X
- Dissipatore
- CORSAIR H115i Pro
- Scheda Madre
- ASUS X470-F
- HDD
- CORSAIR MP510 480GB | SAMSUNG 860 EVO 1TB | WD Red 2TB
- RAM
- CORSAIR Vengeance RGB 16GB (2x8) DDR4 3466 C16 @ 3200 C16
- GPU
- Gigabyte GTX1080 WF2 + Gigabyte GTX 1050Ti WF2
- Audio
- Integrata: Supreme FX
- Monitor
- SAMSUNG 28UE590 28" 4K 1ms
- PSU
- CORSAIR RM750X
- Case
- CORSAIR Obsidian 450D
- Periferiche
- Razer BlackWidow | Logitech Master MX2
- OS
- Windows 10 Pro
fflush pulisce il buffer dello stream passato come parametro, io sinceramente in questi casi non l'ho mai usato.
In teoria potresti volerlo aggiungere quando stai lavorando con file, quindi prima di chiuderli puoi richiamare la funzione col puntatore al file aperto come parametro, ma anche in quel caso, sinceramente basta fclose per evitare problemi.
Fra l'altro avevo letto tempo fa proprio sull'argomento che fflush non è pensato per essere usato con l'stdin come buffer di destinazione.
Quello che stai dicendo te mi è tornato utile una volta, ma in una situazione diversa: non stavo prendendo stringhe come parametri, ma richiedevo un tasto premuto come input ogni tot tempo, e volevo assicurarmi di leggere ogni volta l'ultimo tasto premuto nell'intervallo trascorso. Ma anche in quel caso, non ho usato fflush proprio per quel motivo, basta fare un ciclo e scartare i caratteri presenti nel buffer finché non ne resta uno solo :)
In teoria potresti volerlo aggiungere quando stai lavorando con file, quindi prima di chiuderli puoi richiamare la funzione col puntatore al file aperto come parametro, ma anche in quel caso, sinceramente basta fclose per evitare problemi.
Fra l'altro avevo letto tempo fa proprio sull'argomento che fflush non è pensato per essere usato con l'stdin come buffer di destinazione.
Quello che stai dicendo te mi è tornato utile una volta, ma in una situazione diversa: non stavo prendendo stringhe come parametri, ma richiedevo un tasto premuto come input ogni tot tempo, e volevo assicurarmi di leggere ogni volta l'ultimo tasto premuto nell'intervallo trascorso. Ma anche in quel caso, non ho usato fflush proprio per quel motivo, basta fare un ciclo e scartare i caratteri presenti nel buffer finché non ne resta uno solo :)