.
.
名稱
set - 讀寫變量
語法
set varName ?value?
描述
返回變量varName的值,如果指定了value,就將value的值給變量varName,如果varName不存在就創建一個新的變量,然後返回它的值。如果varName包含一對小括號,就代表一個數組變量,小括號前爲數組的名稱,小括號內的內容爲在數組中的索引,如果沒有小括號代表varName爲一個標量變量。
如果varName包含名字空間限定,或者varName沒有被限定但是沒有過程是激活的,根據namespace用戶手冊中的名字解析,varName引用一個名字空間變量。
如果一個進程是激活的並且varName是沒有被限定的,那麼varName引用一個變量或者進程的本地變量,除非varName由global、variable或者upvar命令聲明。
示例
給變量r賦值一個隨機數:
set r [expr {rand()}]
在數組元素中存儲一個短信息:
set anAry(msg) "Hello, World!"
存儲在一個索引爲變量的數組元素中:
set elemName "msg"
set anAry($elemName) "Hello, World!"
把儲存在vbl中的值作爲一個變量賦值給變量out:
set in0 "small random"
set in1 "large random"
set vbl in[expr {rand() >= 0.5}]
set out [set $vbl]