我正在使用一个数组并使用tcl脚本打印它的值,但是当我运行脚本时说
can't read "ipname(0)": no such element in array
以下是我正在使用的代码
array set ipname {UART TEST SPI I2C}
set asize 4
for {set i 0} {$i < $asize} {incr i} {
puts "$ipname($i) "
}
答案 0 :(得分:0)
您的array set
命令没有按照您的想法执行。从本质上讲,就像您将其定义如下:
ipname("UART") = "TEST"
ipname("SPI") = "I2C"
你想要的是
set ipname(0) "UART"
set ipname(1) "TEST"
set ipname(2) "SPI"
set ipname(3) "I2C"
或
array set ipname {0 UART 1 TEST 2 SPI 3 I2C}
请参阅Tcl阵列的文档:http://tcl.tk/man/tcl8.5/TclCmd/array.htm