ON ERROR GOTO |
Dans l'erreur aller à |
---|---|
QuickBASIC/QBasic |
Syntaxe
ON ERROR {GOTO ligne | RESUME NEXT} |
Paramètres
Nom | Description |
---|---|
0 | Ce bloc d'instruction indique au QuickBASIC qu'en cas d'erreur aucun branchement ne sera effectué et que l'erreur devra être gérer manuellement par l'utilisateur. |
ligne | Ce paramètre indique quand cas d'erreur un saut vers l'étiquette spécifié se produira. |
RESUME NEXT | Ce bloc d'instruction indique au QuickBASIC qu'en cas d'erreur le branchement se poursuivra à ligne suivante du code source. |
Description
Cette commande permet d'effectuer des branchements automatique lorsqu'une erreur du code source Basic se produit.
Remarques
- Le paramètre de ligne est le numéro de ligne ou l'étiquette de ligne de la première ligne de la routine de gestion des erreurs. Cette ligne doit apparaître dans le code au niveau du module.
- Si la ligne ne peut pas être trouvée dans le module où l'erreur s'est produite, ou s'il n'y a pas d'instruction ON ERROR GOTO, une recherche en arrière est effectuée dans les modules ayant appelé le module avec l'erreur. Si un gestionnaire d'erreurs actif est trouvé, il est utilisé. Si aucun gestionnaire d'erreurs actif n'est trouvé, un message d'erreur est affiché et l'exécution du programme s'arrête. Le message d'erreur spécifique dépend du type d'erreur.
- Seuls les modules du chemin d'appel sont recherchés. Les modules en dehors du chemin ne sont pas recherchés, même s'il n'y a pas de gestionnaire d'erreurs actif dans le chemin de recherche.
- Un numéro de ligne de 0 désactive la gestion des erreurs. Il ne spécifie pas la ligne 0 comme début du code de gestion des erreurs, même si le programme contient une ligne numérotée 0. Les erreurs suivantes affiches un message d'erreur et arrêtent le programme. Une fois la gestion des erreurs activée, toute erreur pouvant être interceptée entraîne un saut vers la routine de gestion des erreurs spécifiée.
- Dans un gestionnaire d'erreurs, l'exécution d'une instruction ON ERROR avec un numéro de ligne de 0 arrête l'exécution du programme et affiche le message d'erreur de l'erreur ayant provoqué l'interruption. C'est un moyen pratique d'arrêter un programme en réponse à des erreurs ne pouvant pas être traitées par la routine de gestionnaire de l'erreur.
- Notez qu'une routine de gestion des erreurs n'est pas une procédure SUB ou FUNCTION ni une fonction DEF FN. Une routine de gestion des erreurs est un bloc de code de module marqué par une étiquette de ligne ou un numéro de ligne.
- Les procédures SUB et FUNCTION et les fonctions DEF FN peuvent contenir leurs propres gestionnaires d'erreurs. Le gestionnaire d'erreurs doit être situé après la dernière instruction exécutable mais avant l'instruction END SUB, END FUNCTION ou END DEF. Pour empêcher le gestionnaire d'erreurs de s'exécuter en l'absence d'erreur, la procédure ou la fonction doit se terminer par une instruction EXIT SUB, EXIT FUNCTION ou EXIT DEF immédiatement avant le gestionnaire d'erreurs, comme dans l'exemple suivant :
- Les erreurs survenant dans une routine de gestion des erreurs ne sont pas interceptées. Ces erreurs interrompent l'exécution du programme après l'affichage d'un message d'erreur.
Exemple
Voici un exemple d'une utilisation typique de cette fonction :
on obtiendra le résultat suivant :
AvantApres
Voir également
Langage de programmation - QuickBASIC/QBasic - Référence de procédures et de fonctions - ERDEV
Langage de programmation - QuickBASIC/QBasic - Référence de procédures et de fonctions - ERDEV$
Langage de programmation - QuickBASIC/QBasic - Référence de procédures et de fonctions - ERR
Langage de programmation - QuickBASIC/QBasic - Référence de procédures et de fonctions - ERL
Langage de programmation - QuickBASIC/QBasic - Référence de procédures et de fonctions - ERROR
Langage de programmation - QuickBASIC/QBasic - Référence de procédures et de fonctions - GOTO
Langage de programmation - QuickBASIC/QBasic - Référence de procédures et de fonctions - RESUME
Langage de programmation - BASICA/GWBASIC - Référence de procédures et fonctions - ON ERROR GOTO