.for

.for 标记的行为类似于 C 中的 关键字 (keyword) ,只不过多个增量命令必须用分号分隔,而不是逗号。

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

语法元素

InitialCommand
指定将在循环开始之前执行的命令。 只允许使用一个初始命令。

条件
指定条件。 如果计算结果为零,则将其视为 false;否则为 true。 括号中的 “条件 ”是可选的。 条件 必须是表达式,而不是调试器命令。 它将由默认表达式计算器 (MASM 或 C++) 进行计算。 有关详细信息,请参阅 数值表达式语法

IncrementCommands
指定将在每个循环结束时执行的一个或多个命令。 如果要使用多个递增命令,请用分号分隔它们,但不用大括号括起来。

命令
指定一个或多个命令,只要条件为 true,这些命令就会重复执行。 此命令块需要括在大括号中,即使它由单个命令组成。 多个命令应用分号分隔,但右大括号前的最后一个命令不需要后跟分号。

其他信息

有关其他控制流令牌及其在调试器命令程序中的使用的信息,请参阅 使用调试器命令程序

注解

如果所有工作都由增量命令完成,则可以完全省略 Condition ,只需使用一对空的大括号。

下面是具有多个递增命令的 .for 语句的示例:

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

.break.continue 令牌可用于退出或重启 Commands 块。