error
signale une erreur d'éxécution
Séquence d'appel
error(message) error(message, n) error(n, message)
Paramètres
- message
- Vecteur de chaînes de caractères. Le message à afficher. Chaque élément est affiché sur une ligne distincte. Il est de bon usage d'indiquer une version du message traduite via - gettext(…).
- n
- entier > 0: identifiant numérique à attribuer à l'erreur. Par défaut = 10000. Alors que le message apparaît le plus souvent traduit dans la langue de la session, - npermet d'identifier et de tester l'erreur indépendamment de la langue.
Description
error(…) permet de signaler une erreur d'exécution. Par défaut,
            error
            
- stoppe l'éxécution en cours,
- affiche dans la console la liste des appels imbriqués ayant mené à l'erreur,
- affiche dans la console le messaged'erreur donné,
- et revient au niveau d'exécution initial.
Afin d'éviter de stopper l'exécution, l'erreur peut être interceptée et gérée
            en utilisant try … catch ou execstr(…,'errcatch'),
            et en l'identifiant avec lasterror(…).
error(message) produit (et affiche) une erreur n° 10000 indiquée par
            le message fourni.
error(message,n) identifie l'erreur par le n° n.
Voir la table des messages standard dans error_table. La plupart d'entre eux sont déjà traduits dans les 4 principales langues supportées.
Exemples
function test(a) if argn(2)~=1 msg = gettext("%s: Wrong number of input arguments: %d expected.\n") error(msprintf(msg, "test", 1)) end endfunction function myfun() a = 1; test() endfunction // ---------- error(['A multi line' 'error message']) error(500, 'Error: my error message') [m, n] = lasterror() test() myfun()
--> error(['A multi line' 'error message']) A multi line error message --> error(500, 'Error: my error message') Error: my error message --> [m, n] = lasterror() n = 500. m = Error: my error message --> test() à la ligne 4 de la fonction test test : Nombre erroné d'arguments d'entrée : 1 attendus. --> myfun() à la ligne 4 de la fonction test à la ligne 3 de la fonction myfun test : Nombre erroné d'arguments d'entrée : 1 attendus.
Voir aussi
- lasterror — get last recorded error message
- error_table — list of main standard errors messages
- gettext — indexes or/and translates some indexed english messages
- warning — Affichage des messages d'avertissement à l'attention des utilisateurs
- try — mot clé de début du bloc try dans une instruction de contrôle try-catch
- execstr — exécution d'instructions Scilab contenues dans des chaînes de caractères
- where — donne l'arborescence d'appel courante
Historique
| Version | Description | 
| 5.0.0 | Syntaxe error(n, message)introduite. | 
| 5.4.0 | Le message peut désormais être multiligne (vecteur de textes). | 
| 6.0.0 | Syntaxes error(n)eterror(n, pos)supprimées : un message d'erreur explicite doit désormais être obligatoirement
                    indiqué. Il n'y a désormais plus d'identifiant d'erreur absolu. | 
| Report an issue | ||
| << errclear | Gestion des erreurs | error_table >> |