如果是的話

如果 expr1 ?那麼? body1 elseif expr2 ?然後呢? body2 ……?別的??bodyN?

exprN 是一個計算結果為布林值的表示式。 bodyN 是一個命令列表。

set i 5
if {$i < 10} {
  puts {hello world}
} elseif {$i < 70} {
  puts {enjoy world}
} else {
  puts {goodbye world}
}

對於開始測試下身子

startnextbody 是命令列表。 test 是一個計算結果為布林值的表示式。

休息的命令將跳出迴圈。將繼續命令將跳到迴圈的下一次迭代。

常見用法是:

for {set i 0} {$i < 5} {incr i} {
  puts "$i: hello world"
}

由於 startnext 是命令列表,因此可以存在任何命令。

for {set i 0; set j 5} {$i < 5} {incr i; incr j -1} {
  puts "i:$i j:$j"
}

測試身體

試驗是用於評估為布林值的表示式。雖然測試是真實的,身體被執行。

set x 0
while {$x < 5} {
  puts "hello world"
  incr x
}

休息的命令將跳出迴圈。將繼續命令將跳到迴圈的下一次迭代。

set lineCount 0
while {[gets stdin line] >= 0} {
  puts "[incr lineCount]: $line"
  if { $line eq "exit" } {
    break
  }  
}