FPURGE(3)

NOM
fpurge, __fpurge - Purger un flux

SYNOPSIS
/* Non supporté */
#include <stdio.h>

int fpurge(FILE *stream);

/* Supporté */
#include <stdio.h>
#include <stdio_ext.h>

void  __fpurge(FILE *stream);

DESCRIPTION
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(3). Voir aussi fflush(3).

La fonction __fpurge() fait exactement la même chose mais ne renvoie pas de code de retour.

VALEUR RENVOYÉE
En cas de succès, fpurge() renvoie 0. En cas d'erreur, elle renvoie -1 et renseigne errno en conséquence.

ERREURS

EBADF
    stream ne correspond pas à un flux ouvert.

CONFORMITÉ
Ces fonctions ne sont ni standard 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.

NOTES
Vouloir purger des tampons d'entrée constitue généralement une erreur.

VOIR AUSSI
fflush(3), setbuf(3), stdio_ext(3)

TRADUCTION

Ce document est une traduction réalisée par Stéphan Rafin <stephan DOT rafin AT laposte DOT net> le 25 avril 2002 et révisée le 17 juillet 2008.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 3 fpurge ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.