Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: Français - Português - 日本語 - Русский
Scilab Help >> Scilab > Variables > clear


kills variables


clear a b c
clear('a', 'b', 'c')
clear(['a' 'b' 'c'])


a, b, c...

names of variables of any type and size, but not protected


This command kills variables which are not protected. It removes the named variables from the environment. By itself clear kills all the variables except the variables protected by predef. Thus the two commands predef(0) and clear remove all the variables.

Normally, protected variables are standard libraries and variables with the percent prefix.

Note the particular syntax clear a and clear('a') and not clear(a). Note also that a=[] does not kill a but sets a to an empty matrix.

If a name Var matches no variable, clear Var does nothing silently.

clear() can be overloaded for any mlist("foo") type, by defining a %foo_clear() macro. It will be called either when clear is explicitly applied to any mlist of this type, or implicitly when any mlist of this type is deleted when leaving the environment where it has been defined.


a = 2;
b = 3;
c = 4;
clear a
isdef("a") // F
isdef("b") // T
isdef("b") // F

a = 2;
b = 3;
c = 4;
clear(['a' 'b' 'c'])
isdef("a") | isdef("b") | isdef("c") // F
function %foo_clear(o)

value = mlist("foo");
clear value // will print "deleted"

See also

  • predef — variable protection
  • clearglobal — kills global variables
  • funcprot — switch scilab functions protection mode
  • who — listing of variables
  • xmlDelete — Delete a XML document


5.5.0 Argument can now be a matrix of strings
6.0.0 clear is now protected: Assignments like clear=1 are no longer possible.
6.1.0 clear becomes overloadable for any mlist("foo"), with %foo_clear().
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Jan 03 14:23:20 CET 2022