Debugging Tools for Windows

.for

.for 关键字的行为和 C 语言中的 for 关键字一样,只有一点不同,多个增量命令之间必须用分号隔开,而不是用逗号。

语法

.for (InitialCommand Condition ; IncrementCommands) { Commands } 

语法项

InitialCommand
指定循环开始前执行的命令。只允许单个的初始化命令。
Condition
指定条件。如果计算后结果为零,则被当成假,否则为真。把 Condition 用圆括号括住是可选的。Condition 必须是一个表达式,而不是一个调试器命令。将使用缺省的表达式求解器(MASM or C++)对其求值。详细请看数值表达式语法
IncrementCommands
指定一条或多条命令,在单次循环结束时执行。如果想要执行多条增量命令,需要用分号把它们隔开,不需要用花括号括住。
Commands
指定一条或多条命令,当条件为真时会被重复执行。即使只包含一条命令,该命令块都需要用花括号括住。多个命令间用分号隔开,结束花括号前的最后一条命令不需要带分号。

注释

如果在增量命令中就可以做完所有工作,你完全可以忽略 Commands 部分,简单的使用一对花括号就行。

这有一个带多条增量命令的 .for 语句的例子:

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

.break.continue关键字可用来退出或者重头开始 Commands 语句块。

附加信息

需要其它流程控制符的信息以及它们在调试器命令程序中的用法,请看使用调试器命令程序

Build machine: CAPEBUILD