<< global Variables isglobal >>

Scilab Help >> Scilab > Variables > isdef

isdef

vérifie si une variable existe

Séquence d'appel

ve = isdef(name [,where])

Paramètres

ve

une matrice de booléens de même taille que name

name

une matrice de chaînes de caractères.

where

chaîne de caractères, peut valoir 'l' (pour "local"), 'n' (pour "nolocal") ou 'a' (pour "all"). Par défaut, vaut 'a'.

Description

isdef(name) renvoie %T (vrai) si la variable nommée name existe et %F (faux) sinon.

Mise en garde : une fonction utilisant isdef peut renvoyer un résultat dépendant de l'environnement courant !

isdef(name, 'l') renvoie %T si la variable nommée name existe dans l'environnement local de la fonction courante et %F sinon.

isdef(name, 'n') renvoie %T si la variable nommée name existe dans l'environnement appelant (y compris le niveau global) de la fonction courante et %F sinon.

Remarque : seule la première lettre de l'option where est prise en compte.

Exemples

A = 1; B = 2; C = 3; D = 4;
isdef(['A', 'B'; 'C', 'D'] )
clear A B C D;
isdef(['A', 'B'; 'C', 'D')

function level1()
  function level2()
    disp(isdef(["a", "b"], "a"));
    disp(isdef(["a", "b"], "l"));
    disp(isdef(["a", "b"], "n"));
  endfunction
  level2()
endfunction
function go()
  a = 1;
  level1()
endfunction
go()

Voir aussi


Report an issue
<< global Variables isglobal >>