数组是一些元素的集合。 TCL 的数组和普通计算机语言中的数组有很大的区别。在 TCL 中,不能单独声明一个数组,数组只能和数组元素一起声明。数组中,数组元素的名字包含两部分:数组名和数组中元素的名字, TCL 中数组元素的名字(下标)可以为任何字符串。例如:
第一个命令生成一个名为 day 的数组,同时在数组中生成一个名为 monday 的数组元素,并把值置为 1,第二个命令生成一个名为 tuesday 的数组元素,并把值置为 2;
set a monday
set day(monday) 1
set b $day(monday) //b 的值为 1,即 day(monday)的值
set c $day($a) //c 的值为 1,即 day(monday)的值
由于day是数组,所以$符号不仅仅局限于把从$符号往后直到第一个不是字母、数字或下划线的字符之间的单词符号作为要被置换的变量的名字;