总有别人不曾走过的路,总有别人不曾目睹的风景......
Tcl读书笔记(三)——变量
上一篇 /
下一篇 2012-05-30 10:27:33
/ 个人分类:Tcl
Tcl中的数组是元素的集合,每一个元素是有自己的名称和值的变量。数组元素的名称由两部分组成:数组名和数组中的元素名。数组名和元素名都可以是任意的字符串。因此Tcl的数组有时也被称为关联数组,以便同其他语言中元素名只能是数字的那种数组区分。
Tcl中数组的语法:set arrayName(elementName) value
查询数组元素主要有以下两种方法:查询数组元素名列表以及查询数组元素个数。使用方法如下。
array names arrayName:返回指定数组的元素名列表。
array size arrayName:返回指定数组的元素个数。
通过此方法,可以查看预定义变量env和tcl_platform的详情。如 array names env等。
array names命令也可以与foreach联合使用,遍历整个数组中的各个元素。
另外,array exists可以用于检测数组中的某个特定变量是否存在,array和get和array set可用于数组和字典之间的相互转化。如:
*****************************************************
set a(head) hat
set a(hand) glove
set a(foot) shoe
set apparel [array get a]
=> foot shoe head hat hand glove
array exists a
=> 1
array exists appreal
=> 0
array set b $apparel
lsort [array names b]
=> foot hand head
*****************************************************
incr命令读入两个参数,分别是变量名和一个整数。incr命令将这个整数加到变量值上,将结果保存到变量中,返回变量的新值作为结果。
append命令将文本添加到一个变量的结尾。它需要获得两个或更多的参数,第一个参数是变量的名称,其余的参数是要添加到变量中的文本字符串。它把这些字符串添加到变量值的结尾,返回变量的新值。
其他变量:
trace集合命令可用于监视变量,在变量设置、被读取或被删除时调用指定的Tcl脚本。global和upvar命令可由过程使用,访问不由它所有的局部变量。namespace集合命令创建并管理命名空间,命名空间是命令集合和变量的命名集合。
收藏
举报
TAG:
TCL
tcl
Tcl