fclose(3)

NOM
fclose - Fermer un flux

BIBLIOTHÈQUE
Bibliothèque C standard (libc, -lc)

SYNOPSIS
#include <stdio.h>

int fclose(FILE *flux);

DESCRIPTION
La fonction fclose() vide le flux pointé par flux (en écrivant toute donnée de sortie présente dans le tampon avec fflush(3)) et ferme le descripteur de fichier sous-jacent.

Le comportement de fclose() est indéfini si le paramètre flux est un pointeur non valable ou un descripteur déjà passé en paramètre lors d'une invocation précédente de fclose().

VALEUR RENVOYÉE
En cas de réussite, 0 est renvoyé. Sinon, EOF est renvoyé et errno est définie avec le code d'erreur. Dans tous les cas, tout autre accès ultérieur au flux (y compris un autre appel de fclose()) conduit à un comportement indéfini.

ERREURS

EBADF
    Le descripteur de fichier sous-jacent à flux n'est pas valable.

La fonction fclose() peut également échouer et définir errno avec l'une des erreurs spécifiées pour les fonctions close(2), write(2) ou fflush(3).

ATTRIBUTS
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur
fclose() | Sécurité des threads | MT-Safe

STANDARDS
POSIX.1-2001, POSIX.1-2008, C99.

NOTES
Notez que fclose() ne vide que les tampons d'espace utilisateur fournis par la bibliothèque C. Pour s'assurer que les données sont écrites physiquement sur le disque, il faut aussi vider les tampons du noyau à l'aide, par exemple, de sync(2) ou fsync(2).

VOIR AUSSI
close(2), fcloseall(3), fflush(3), fileno(3), fopen(3), setbuf(3)

TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot <david@tilapin.org>, Frédéric Hantrais <fhantrais@gmail.com> et Lucien Gentis <lucien.gentis@waika9.com>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.