man atexit (Fonctions bibliothèques) - Enregistrer une fonction à invoquer à la fin du programme.
NOM
atexit - Enregistrer une fonction à invoquer à la fin du programme.
SYNOPSIS
#include <stdlib.h> int atexit (void (*fonction)(void));
DESCRIPTION
La fonction atexit() enregistre la fonction donnée pour que celle-ci soit automatiquement invoquée lorsque le programme se termine normalement avec exit(3) ou par un retour de la fonction main. Les fonctions ainsi enregistrées sont invoquées en ordre inverse de leur enregistrement, aucun argument n'est transmis.
Au moins ATEXIT_MAX fonctions peuvent être enregistrées. Cette valeur est au moins 32. Elle peut être obtenue en utilisant sysconf(3).
Avec un appel réussi à l'une de ces fonctions, tous les enregistrements sont annulés
VALEUR RENVOYÉE
La fonction atexit() renvoie 0 si elle réussit, et une valeur non-nulle si elle échoue.
EXEMPLE
#include <stdio.h> #include <stdlib.h> #include <unistd.h>
void bye(void) { printf("That was all, folks\n"); }
int main(){ long a; int i;
a = sysconf(_SC_ATEXIT_MAX); printf("ATEXIT_MAX = %ld\n", a);
i = atexit(bye); if (i != 0) { fprintf(stderr, "cannot set exit function\n"); return EXIT_FAILURE; } return EXIT_SUCCESS; }
CONFORMITÉ
SVID 3, BSD 4.3, ISO 9899, POSIX 1003.1-2001
VOIR AUSSI
TRADUCTION
Christophe Blaess, 1996-2003.