.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