转自:点击打开链接
单步执行是最常见的调试手段之一,即每次执行一行代码。
“调试”菜单提供了三个逐句通过代码的命令:
- 逐语句
- 逐过程
- 跳出
“逐语句”和“逐过程”的差异仅在于它们处理函数调用的方式不同。这两个命令都指示调试器执行下一行的代码。如果下一行包含函数调用,“逐语句”仅执行调用本身,然后在函数内的第一个代码行处停止。“逐过程”执行整个函数,然后在函数外的第一个行处停止。如果要查看函数调用的内容,使用“逐语句”。如果要避免进入并单步执行函数,请使用“逐过程”。
在嵌套函数调用上,“逐语句”进入并单步执行嵌套最深的函数。如果在类似 Func1(Func2())
的调用上使用“逐语句”,调试器进入并单步执行函数 Func2
。如果希望选择要进入并单步执行的某个嵌套函数,请使用快捷菜单中的“单步执行特定函数”命令(仅限本机 C/C++ 代码可用,如果还在使用 C++ 的托管扩展,则禁用此命令)。有关更多信息,请参见进入并单步执行特定函数。
当位于函数调用内部并想返回到调用函数时,使用“跳出”。“跳出”继续执行代码直到函数返回,然后在调用函数中的返回点中断。
如果应用程序正在运行,则无法访问这些“单步执行”命令。“单步执行”命令只在中断模式或启动应用程序前有效。有关更多信息,请参见中断执行。
进入并单步执行尚未执行的程序
- 从“调试”菜单中选择“逐语句”。
调试过程中单步执行
- 调试器必须处于中断模式。
- 从“调试”菜单中选择“逐语句”、“跳出”或“逐过程”。