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,
n
permet 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
message
d'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) et error(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 >> |