Linux |
CentOS 4.8 |
|
fpurge(3) |
.
fpurge, __fpurge − Purger un flux |
/* non supporté */ #include <stdio.h> int fpurge(FILE *stream); /* supporté */ #include <stdio.h> #include <stdio_ext.h> void __fpurge(FILE *stream); |
La fonction fpurge() efface les tampons d’un flux donné. Pour les flux de sortie, on se débarrasse de toute sortie n’ayant pas encore été écrite. Pour les flux d’entrée, on renonce à toute entrée lue par l’objet sous-jacent mais n’ayant pas encore été acquise par getc(3); Cela inclut tout texte ré-injecté dans le flux par ungetc(). Voir aussi fflush(3). La fonction __fpurge() fait exactement la même chose mais n’a pas de code de retour. |
En cas de succès, fpurge() renvoie 0. En cas d’erreur, elle renvoie −1 et positionne errno de façon adéquate. |
EBADF |
stream ne correspond pas à un flux ouvert. |
Ces fonctions ne sont ni standards ni portables. La fonction fpurge() a été introduite sous BSD 4.4 et n’est pas disponible sous Linux. La fonction __fpurge() a été introduite sous solaris, et se trouve dans la glibc 2.1.95 et ses versions ultérieures. |
Vouloir purger des tampons d’entrée constitue généralement une erreur. |
fclean(3), fflush(3), setbuf(3), stdio_ext(3) |
Stéphan Rafin, 2002. |
fpurge(3) |