如何在expect-send脚本中初始化数组?我们可以使用初始化变量 设置Variable_name值。同样,如何在expect-send脚本中启动数组?
答案 0 :(得分:2)
我假设你的意思是在关联数组中的数组,而不是在类似C的数字索引列表中的数组。您使用array set
命令:
array set varname {key1 val1 key2 val2 key3 val3 ... ...}
由于大括号的内容不是通过Tcl评估的(因此可以预期),如果你想要它可以使它漂亮
array set varname {
key1 val1
key2 val2
.... ....
}
您也可以直接分配数组元素:
set varname(key1) val1
set varname(key2) val2
...
答案 1 :(得分:1)
请注意,与用于设置变量的 set 不同,array set
的工作方式不同:
在同一个tclsh:
% array set a {key1 val1 key2 val2}
% parray a
a(key1) = val1
a(key2) = val2
#This will not delete the content of the array:
% array set a {}
% parray a
a(key1) = val1
a(key2) = val2
#This will add new key-value pair:
% array set a {key3 val3}
% parray a
a(key1) = val1
a(key2) = val2
a(key3) = val3
#Array keys are unique:
% array set a {key1 val1 key2 val2}
% parray a
a(key1) = val1
a(key2) = val2
a(key3) = val3
#To unset the entire array content:
array unset a *
#To unset the array:
array unset a