Namespaces
Variants

_Exit

From cppreference.net
Défini dans l'en-tête <stdlib.h>
void _Exit ( int exit_code ) ;
(depuis C99)
(jusqu'à C11)
_Noreturn void _Exit ( int exit_code ) ;
(depuis C11)
(jusqu'à C23)
[ [ noreturn ] ] void _Exit ( int exit_code ) ;
(depuis C23)

Provoque l'arrêt normal du programme sans nettoyage complet des ressources.

Les fonctions passées à at_quick_exit() ou atexit() ne sont pas appelées. Le fait que les flux ouverts avec des données tamponnées non écrites soient vidés, que les flux ouverts soient fermés, ou que les fichiers temporaires soient supprimés est défini par l'implémentation.

Si exit_code est 0 ou EXIT_SUCCESS , un statut défini par l'implémentation indiquant une terminaison réussie est retourné à l'environnement hôte. Si exit_code est EXIT_FAILURE , un statut défini par l'implémentation, indiquant une terminaison non réussie , est retourné. Dans les autres cas, une valeur de statut définie par l'implémentation est retournée.

Table des matières

Paramètres

exit_code - statut de sortie du programme

Valeur de retour

(aucun)

Exemple

#include <stdlib.h>
#include <stdio.h>
/* _Exit does not call functions registered with atexit. */
void f1(void)
{
    puts("pushed first");
}
void f2(void)
{
    puts("pushed second");
}
int main(void)
{
    printf("Enter main()\n");
    atexit(f1);
    atexit(f2);
    fflush(stdout);   /* _Exit may not flush unwritten buffered data */
    _Exit(0);
}

Sortie :

Enter main()

Références

  • Norme C17 (ISO/CEI 9899:2018) :
  • 7.22.4.5 La fonction _Exit (p : 256)
  • Norme C11 (ISO/CEI 9899:2011) :
  • 7.22.4.5 La fonction _Exit (p: 352)
  • Norme C99 (ISO/IEC 9899:1999) :
  • 7.20.4.4 La fonction _Exit (p: 316)

Voir aussi

provoque la fin anormale du programme (sans nettoyage)
(fonction)
provoque la fin normale du programme avec nettoyage
(fonction)