断点调试
断点是调试器设置的一个代码位置。当程序运行到断点时,程序中断执行,回到调试器。在进入中断模式时,并不会终止或结束程序的执行,所有元素都保留在内存中。执行可以在任何时候继续。
-
插入断点 插入断点主要有以下3种方式:(1)在要设置断点的代码行旁边的灰色空白中单击。(2)右击要设置断点的代码行,在弹出的快捷菜单中选择“断点”→“插入断点”命令。(3)单击要设置断点的代码行,选择菜单中的“调试”→“切换断点”命令。 -
删除断点 删除断点主要有3种方式,分别如下:(1)可以单击设置了断点的代码行左侧的红色圆点。(2)在设置了断点的代码行左侧的红色圆点上右击,在弹出的快捷菜单中选择“删除断点”命令。(3)在设置了断点的代码行上右击,在弹出的快捷菜单中选择“断点”→“删除断点”命令。
开始、中断和停止程序的执行
- 开始执行
开始执行是最基本的调试功能之一,有以下两种方式可以对代码开始执行调试功能: (1) 从“调试”菜单中选择“开始调试”命令, (2) 在源代码窗口中右键单击可执行代码中的某行,从弹出的快捷菜单中选择“运行到光标处”命令, - 中断执行
当执行到达一个断点或发生异常时,调试器将中断程序的执行。选择“调试”/“全部中断”命令后,调试器将停止所有在调试器下运行的程序的执行。此时,程序并没有退出,可以随时恢复执行,因为该应用程序处于中断模式。 - 停止执行
停止执行意味着终止正在调试的进程并结束调试会话,可以通过选择菜单中的“调试”/“停止调试”命令来结束运行和调试。也可以选择工具栏中的按钮停止执行。
逐过程执行和逐语句执行
通过单步执行,调试器每次只执行一行代码,单步执行主要是通过逐语句、逐过程和跳出这3种命令实现的。“逐语句”和“逐过程”的主要区别是当某一行包含函数调用时,“逐语句”仅执行调用本身,然后在函数内的第一个代码行处停止。而“逐过程”执行整个函数,之后在函数外的第一行代码处停止。如果位于函数调用的内部并想返回到调用函数时,应使用“跳出”,“跳出”将一直执行代码,直到函数返回,然后在调用函数中的返回点处中断。 当启动调试后,可以单击工具栏中的 按钮执行“逐语句”操作,单击 按钮执行“逐过程”操作,单击 按钮执行“跳出”操作,如下图所示。
|