我有我的TCL代碼,
set n0 [$ns node]
$n0 set X_ 284
$n0 set Y_ 380
$n0 set Z_ 0.0
$ns initial_node_pos $n0 20
set n1 [$ns node]
$n1 set X_ 343
$n1 set Y_ 195
$n1 set Z_ 0.0
$ns initial_node_pos $n1 20
然後我說for{ } loop
分配爲每個節點的TCP連接:
for {set i 0} { $i < 10} {incr i} {
set tcp1 [new Agent/TCP]
$ns attach-agent $n$i $tcp1
}
它顯示錯誤像,
can't read "n": no such variable
while executing
"$ns attach-agent $n$i $tcp1"
("for" body line 4)
invoked from within
"for {set i 0} { $i < 10} {incr i} {
set tcp1 [new Agent/TCP]
$ns attach-agent $n$i $tcp1
}
當我使用$n($i)
,而不是$n$i
它工作正常。有沒有辦法在TCL使用可變$n$i
?
當然,別名可以是陣列或到數組的一個元素。 –