unset(3tcl)
NAME
unset - Delete variables
SYNOPSIS
unset ?-nocomplain? ?--? ?name name name ...?
______________________________________________________________________________
DESCRIPTION
This command removes one or more variables. Each name is a variable
name, specified in any of the ways acceptable to the set command. If a
name refers to an element of an array then that element is removed
without affecting the rest of the array. If a name consists of an
array name with no parenthesized index, then the entire array is
deleted. The unset command returns an empty string as result. If
-nocomplain is specified as the first argument, any possible errors are
suppressed. The option may not be abbreviated, in order to
disambiguate it from possible variable names. The option -- indicates
the end of the options, and should be used if you wish to remove a
variable with the same name as any of the options. If an error occurs,
any variables after the named one causing the error are not deleted.
An error can occur when the named variable does not exist, or the name
refers to an array element but the variable is a scalar, or the name
refers to a variable in a non-existent namespace.
EXAMPLE
Create an array containing a mapping from some numbers to their squares
and remove the array elements for non-prime numbers:
array set squares {
1 1 6 36
2 4 7 49
3 9 8 64
4 16 9 81
5 25 10 100
}
puts "The squares are:"
parray squares
unset squares(1) squares(4) squares(6)
unset squares(8) squares(9) squares(10)
puts "The prime squares are:"
parray squares
SEE ALSO
set(3tcl), trace(3tcl), upvar(3tcl)
KEYWORDS
remove, variable
Free and Open Source Software