fclose(3) | Library Functions Manual | fclose(3) |
fclose - Fermer un flux
Bibliothèque C standard (libc, -lc)
#include <stdio.h>
int fclose(FILE *flux);
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().
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.
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).
Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface | Attribut | Valeur |
fclose() | Sécurité des threads | MT-Safe |
POSIX.1-2001, POSIX.1-2008, C99.
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).
close(2), fcloseall(3), fflush(3), fileno(3), fopen(3), setbuf(3)
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 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.
29 décembre 2022 | Pages du manuel de Linux 6.03 |