#include <stdio.h> // <cstdio> en C++
int fclose( FILE * stream );
Cette fonction permet de fermer un flux préalablement ouvert avec la fonction fopen
ou la fonction freopen
.
Lors de la fermeture d'un flux, le buffer en mémoire associé est automatiquement synchronisé
(fflush
), si le flux est ouvert en écriture, et est libéré (il n'est donc pas de
votre responsabilité de libérer ce buffer).
fopen
.
Si la fermeture est correctement réalisée, la valeur 0
vous sera retourner. Par contre, si une erreur survient
durant la fermeture de votre fichier, la valeur EOF
vous sera alors retournée. Consultez alors la variable
errno
pour obtenir plus d'informations sur la cause de l'erreur.
EBADF : le descripteur de flux (FILE *
) passé en paramètre est invalide.
...
#include <stdio.h> #include <stdlib.h> int main() { int returnCode; FILE *file = fopen("destination.txt","w"); if ( file == NULL ) { fprintf( stderr, "Erreur durant l'ouverture du fichier" ); exit( -1 ); } fprintf( file, "Mon texte" ); returnCode = fclose(file); if ( returnCode == EOF ) { fprintf( stderr, "Erreur durant la fermeture du fichier" ); exit( -1 ); } return 0; }
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :