.for

.for トークンは C の for キーワードと同様に動作しますが、複数のインクリメント コマンドはカンマではなくセミコロンで区切る必要がある点が異なります。

.for (InitialCommand ; Condition ; IncrementCommands) { Commands } 

構文要素

InitialCommand
ループが開始される前に実行されるコマンドを指定します。 単一の初期コマンドのみが許可されます。

Condition
条件を指定します。 これがゼロと評価された場合、偽として扱われます。それ以外の場合は真実です。 かっこで囲む条件は省略可能です。 条件デバッガーコマンドではなく、式である必要があります。 これは、デフォルトの式エバリュエーター (MASM または C++) によって評価されます。 詳細については、数値式の構文を参照してください。

IncrementCommands
各ループの最後に実行される 1 つ以上のコマンドを指定します。 複数のインクリメント コマンドを使用する場合は、コマンドをセミコロンで区切りますが、中括弧で囲まないでください。

コマンド
条件が true である限り繰り返し実行される 1 つ以上のコマンドを指定します。 このコマンド ブロックは、単一のコマンドで構成されている場合でも、中かっこで囲む必要があります。 複数のコマンドはセミコロンで区切る必要がありますが、右中括弧の前の最後のコマンドの後にセミコロンを付ける必要はありません。

追加情報

他の制御フロー トークンとデバッガー コマンド プログラムでのそれらの使用については、「デバッガー コマンド プログラムの使用」を参照してください。

解説

すべての作業が増分コマンドによって行われる場合は、Condition を完全に省略して、単純に空の中括弧のペアを使用できます。

以下は、複数のインクリメント コマンドを含む .for ステートメントの例です。

0:000> .for (r eax=0; @eax < 7; r eax=@eax+1; r ebx=@ebx+1) { .... }

.break トークンと . continue トークンは、コマンド ブロックを終了または再開するために使用できます。