ABORT |
Abordé |
---|---|
Langage C | stdlib.h |
Syntaxe
void abort(void); |
Description
Cette fonction permet d'effectuer l'arrête de l'exécution du programme de façon brusque et anormale en envoyant généralement un signal «SIGABRT». Après l'arrêt du programme, le processus, le programme ou l'application parent reprendra le contrôle à l'instruction suivante de l'appel. Elle ne retournera donc aucun résultat puisque la fonction donne le contrôle à quelqu'un d'autre, par contre, la fonction appel généralement un gestionnaire de signal avec de terminer le programme définitivement. On utilisera donc cette fonction uniquement que pour des situations critiques, car il y a un risque élevé de laisser des ressources dans un état incertain, dormante ou de perte de données; il ne s'agit donc pas d'une manière acceptable de quitter un programme.
Algorithme
MODULE ABORT() * Signaler une erreur fatale Envoyer un signal SIGABRT au processus * Arrêter le programme de façon anormale TERMINER immédiatement le programme (arrêt sans appel de fonctions de nettoyage) * Si le signal SIGABRT est ignoré ou intercepté, forcer l'arrêt FORCER l'arrêt immédiat si nécessaire (cas exceptionnel) |
Remarques
- Les fichiers ouverts avec les fonctions fopen, freopen,... ne sont pas refermés après l'exécution de cette fonction. Ainsi, des systèmes d'exploitation comme le DOS, garderont le fichier ouvert et il pourra être utilisé par une autre application.
- Si vous développez une application pour le système d'exploitation DOS, OS/2 ou Windows, et que vous voulez effectuer un test dans votre fichier «.BAT», vous pouvez vérifier à l'aide d'une commande «IF ERRORLEVEL» s'il retourne une valeur 3.
- Cette fonction devrait uniquement utilisé dans un contexte impossible pour l'exécution du programme, par exemple un débordement de mémoire, des ressources insuffisantes,...
- Une forme définie par l'intégration de la terminaison d'état infructueuse est renvoyée à l'environnement hôte par l'appel de la fonction raise(SIGABRT).
Exemple
Cet exemple permet de terminer le programme de façon anormale s'il n'y a plus d'un paramètre passé au programme :
Essayer maintenant !
Voir également
Langage de programmation - C - Référence procédures et fonctions - exit
Langage de programmation - C++ - Référence procédures et fonctions - abort
Références
Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 730.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 27.