機能説明
条件が成立する間、処理を繰り返します。
記述形式
while {test} {body} |
オプション
ループ(body)を繰り返す条件式を指定します。数値は、0が偽でそれ以外が真です。文字では、true,yesが真でfalse,noが偽になります。条件式内にはコメントを記述しないでください。
条件式で使用できる条件演算子
! | 否定 |
< , > , <= , >= , == , != | 比較 |
&& , || | 論理積、論理和 |
条件が真の間実行されるスクリプトコマンド部分です。改行またはセミコロンで区切ることにより複数のコマンドが記述できます。
復帰値
なし
注意事項
“while”と“{ }”(中括弧)の間、および条件式の“}”(閉じ中括弧)と実行部分の“{”(開き中括弧)の間は、必ず空白またはTAB文字が必要です。
“}”と“{”の間など、body以外のところで改行する場合は、行の最後に“\”(円記号)を付けて継続行となるようにしてください。
while文の条件判定の論理に誤りがあるとスクリプトは無限ループをする場合があります。それを回避するために、以下のような仕組みで、ある回数より多くループすることがないよう対処をすることをお勧めします。
while文の中にほかでは使用しないカウンタ用の変数を設け、その値をwhile文の処理の早い段階で毎回チェックさせる。
使用例
5回ループします。
set i 0 while {$i < 5} { incr i }
実行結果/出力形式
なし