Section courante

A propos

Section administrative du site

EXIT

Quitter
Langage C stdlib.h

Syntaxe

void exit(int etat);

Paramètres

Nom Description
etat Ce paramètre permet d'indiquer le code d'état de sortie

Description

Cette fonction met fin à l'exécution d'un programme avec une valeur de retour. D'abord, toutes les fonctions enregistrées par la fonction atexit sont appelées, dans l'ordre inverse de leur enregistrement, sauf qu'une fonction est appelée après toute fonction précédemment enregistrée ayant déjà été appelée au moment de son enregistrement. Si, pendant l'appel à une telle fonction, un appel à la fonction longjmp est effectué pour mettre fin à l'appel à la fonction enregistrée, le comportement est indéfini. Ensuite, tous les flux ouverts avec des données tamponnées non écrites sont vidés, tous les flux ouverts sont fermés et tous les fichiers créés par la fonction tmpfile sont supprimés. Enfin, le contrôle est renvoyé à l'environnement hôte. Si la valeur d'état est zéro ou EXIT_SUCCESS, une forme définie par l'intégration de l'état de fin de résiliation est renvoyée. Si la valeur de l'état est EXIT_FAILURE, une forme définie par l'intégration de la résiliation d'état infructueuse est renvoyée. Sinon, l'état renvoyé est défini par l'intégration.

Algorithme

MODULE exit(etat)
   * Exécuter tous les destructeurs et les fonctions enregistrées avec atexit()
   POUR CHAQUE fonction dans atexit_list
      APPEL function()
   FIN POUR CHAQUE

   * Fermer tous les fichiers ouverts et libérer les ressources
   close_all_files()
   release_all_resources()

   * Envoyer le code de sortie au système d'exploitation
   RETOURNE etat au système d'exploitation

   * Terminer le processus
   terminate_process()

Remarques

Exemple

Voici quelques exemples typiques de l'utilisation de cette fonction :

Essayer maintenant !
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(int argc, char* argv[])
  5. {
  6.     if(argc <= 1) {
  7.         printf("Parametres attendue !\n");
  8.         exit(255);
  9.     } else {
  10.         printf("Processus normal...\n");
  11.     }
  12.     return 0;
  13. }

on obtiendra le résultat suivant :

Parametres attendue !

Voir également

Langage de programmation - C - Référence procédures et fonctions - abort
Langage de programmation - C++ - Référence procédures et fonctions - exit

Références

Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 731.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 90.

Dernière mise à jour : Mardi, le 28 juillet 2015