Home TOC Previous Next


7.3 我该如何做

7.3.1 开始调试器

开始调试器

·       在Build菜单中单击Start Debug子项

单击Go , StepInfoRun to Cursor

7.3.2 运行到特定位置

将程序运行到遇到的第一个断点位置

1 设置断点。

2 在Build菜单中,单击Start Debug

3 在Start Debug菜单中,单击Go

运行到当前光标位置 (调试器尚未启动情况)

1 将光标定位到源文件中您希望中断的特定位置。

2 从Build菜单中,选择Start Debug 下的Run To Cursor

运行到当前光标位置 (调试器已经启动情况且处于中断状态)

1 将光标定位到源文件中您希望中断的特定位置。

2 从Debug菜单中,选择Run To Cursor

设置执行的下一条语句(调试器已经启动情况且处于中断状态)

1 将光标定位到源文件中您希望执行的下一条语句位置。

2 单击鼠标右键。

3 在出现的快捷菜单中,单击Set Next Statement

7.3.3 中止程序

中止程序

Debug菜单中单击Break,返回到编辑状态。

7.3.4 设置断点

使用断点对话框(Edit菜单下的Breakpoints子项),可以设置,移除,禁止,生效或查看断点,退出集成环境时, Magic C++将保存断点的设置。

注意:您在使用断点对话框之前,必须确保至少已经打开了一个工程,否则断点对话框是不可用的。

您也可以在编辑器中直接设置断点。

在编辑器中直接设置断点

1 在编辑状态下,将光标移动到您希望设置断点的行位置。

2 单击工具条上Insert/Remove Breakpoint按钮,在编辑器左边的空白区域中将出现一个红灯标志,标志断点被成功设置。

注意:如果您代码中的一条语句超过一行,请在该语句的最后一行设置断点。

7.3.5 查看和操作断点

查看当前断点列表

1 在Edit菜单中,单击Breakpoints子项。

2 使用垂直滚动条在断点列表中上下浏览。

禁止一个断点

1 在编辑状态下,将光标移动到您希望设置断点的行位置。

2 单击工具条上Enable/Disable Breakpoint按钮,或单击鼠标右键,在快捷菜单中选择Disable Breakpoint子项。

-或-

1 在断点对话框中的断点列表内找到您希望禁止的断点。

2 清除该断点左边的复选框。

3 单击OK。

对于定位断点,在空白区域的红灯标志将变为绿灯标志。

使一个断点生效

1 在编辑状态下,将光标移动到您希望设置断点的行位置。

2 单击工具条上Enable/Disable Breakpoint按钮,或单击鼠标右键,在快捷菜单中选择Enable Breakpoint子项。

-或-

1 在断点对话框中的断点列表内找到您希望使之生效的断点。

2 确认您选中了该断点左边的复选框。

3 单击OK

对于定位断点,在空白区域的绿灯标志将变为红灯标志。

删除一个断点

1 在编辑状态下,将光标移动到您希望设置断点的行位置。

2 单击工具条上Insert/Remove Breakpoint按钮,或单击鼠标右键,在快捷菜单中选择Remove Breakpoint子项。

-或-

1 在断点对话框中的断点列表内找到您希望删除的断点。

2 单击Remove按钮。

3 单击OK

对于定位断点,在空白区域的红灯或绿灯标志将消失。

查看某断点定位的代码

1 在断点对话框中的断点列表内选中一个断点。

2 单击Goto按钮。

该操作将关闭断点对话框,并且将当前光标位置设置到该断点定位的代码处。

7.3.6 单步(进入函数体)

单步执行下一条语句(进入函数体)

1 当程序处于中断状态(程序已经完成上一条调试命令,正在等待用户输入),单击Debug菜单中的Step Info子项

调试器将中断在下一条语句位置。如果下一条语句是某个函数的调用,调试器将进入该函数体,并且在函数体的第一条语句位置中断。

2 重复第1步将继续执行下一条语句。

如果您进入了一个嵌套函数,调试器将进入最深的一级函数,例如,当您执行语句 Fun(Fun2())时,调试器将停留在Fun2()的第一条语句位置。

7.3.7 单步(跳过函数体)

单步(跳过函数体)

1 启动调试器。

2 将程序执行到某个函数调用语句。

3 在Debug菜单中,单击Step Over

调试器将执行该函数,在函数执行完毕后返回。

4 重复第3步将继续执行下一条语句。

7.3.8 从一个函数体中跳出

1 启动调试器,将程序执行到某个函数体内部。

2 在Debug菜单中,单击Step Out子项。

3 调试器将继续完成该函数的剩余语句,在函数返回的位置中断。

警告:为提高调试速度,当您的函数体包含大循环时,您不应该使用Step Out方法来跳过函数,而应该在函数的结束位置设置一个断点,然后在Debug菜单中选择Go子项执行到函数结束位置,再使用Step Out 跳出函数体。

7.3.9 查看变量值

使用快速监视对话框查看变量值

1 等候调试器恢复到中断状态。

-或-

1 单击Debug菜单中的Break子项 中断调试器。

2 单击Debug菜单QuickWatch子项。

3 在编辑框中键入变量名,单击Recalculate

4 单击Close

提示:Expression的下拉框中包含了您最近查看过的变量或表达式列表。

使用工具提示查看变量值

1 等候调试器恢复到中断状态。

-或-

1 单击Debug菜单中的Break子项 中断调试器。

2 将鼠标移动到您希望查看的变量上方,等待片刻,就可以在弹出的工具提示窗口中看到变量值。

使用监视窗口查看变量值

1 等候调试器恢复到中断状态。

-或-

1 单击Debug菜单中的Break子项 中断调试器

2 在View菜单中单击Watch子项。

3 在Watch窗口中选择您希望查看的Tab 页。

4 将变量名键入或粘贴到监视窗口的Name栏中。

5 键入Enter

监视窗口将立即在Value栏显示变量值或错误信息。

当您在监视窗口中添加了一个数组,对象或结构体变量时,变量名的左边将显示出加号(+)或减号(-),您可以单击这些符号来展开或关闭该变量下包含成员的列表。

7.3.10 修改变量值

当程序在断点处中断或位于单步状态,您可以修改非const的变量值。

使用快速监视对话框修改变量值

1 在Debug菜单中,选择QuickWatch

2 在Expression编辑框中输入变量名称。

3 单击Recalculate按钮。

当变量是一个数组,对象或结构体变量时,变量名的左边将显示出加号(+)或减号(-),单击这些符号可以展开或关闭该变量下包含成员的列表。

4 使用Tab键将光标移动到您希望修改的值处。

5 键入该变量的新值。

6 单击Close

提示:要修改一个数组的值,您必须逐个元素地进行修改,不能一次修改整个数组。

使用监视窗口修改变量值

1 在View菜单中单击Watch子项。

2 在监视窗口中,双击您希望修改的值。

-或-

3 使用Tab键将光标移动到您希望修改的值处。

当变量是一个数组,对象或结构体变量时,变量名的左边将显示出加号(+)或减号(-),单击这些符号可以展开或关闭该变量下包含成员的列表。

4 键入该变量的新值。

5 单击Close

提示:要修改一个数组的值,您必须逐个元素地进行修改,不能一次修改整个数组。


Home TOC Previous Next

Copyright(c) 2003-2004 Magicunix,Inc.