您好,欢迎访问三七文档
VisualC++调试教师:孟桂娥认识工具条:调试StepintoStepoverStepoutRuntocursorWatchVariablesRegistersMemoryStopDebugCallstackDisassemblyRestartDebugger调试的一般过程调试,就是在程序的运行过程的某一阶段观测程序的状态。在一般情况下程序是连续运行的,所以我们必须使程序在某一地点停下来。我们所做的第一项工作就是设立断点;其次再运行程序;当程序在设立断点处停下来时,利用各种工具观察程序的状态。程序在断点停下来后,有时我们需要按我们的要求控制程序的运行,以进一步观测程序的流向。下面我们依次来介绍断点的设置,如何控制程序的运行以及各种观察工具的利用。设置断点在VC中,可以设置多种类型的断点,根据断点起作用的方式把这些断点分为三类:1、与位置有关的断点;2、与逻辑条件有关的断点3、与WINDOWS消息有关的断点。主要介绍前面两种断点。设置位置断点最简单的是设置一般位置断点:把光标移到你要设断点的位置,当然这一行必须包含一条有效语句的;然后按工具条上的add/removebreakpoint按钮或按快捷键F9。将会在屏幕上看到在这一行的左边出现一个红色的圆点表示这里设立了一个断点。设置位置断点-图示设置逻辑断点有的时候可能不需要程序每次运行到这儿都停下来,而是在满足一定条件的情况下才停下来,这时就需要设置一种与位置有关的逻辑断点。从EDIT菜单中选中Breakpoints命令,这时Breakpoints对话框将会出现在屏幕上。选中Breakpoint对话框中的Location标签,使Location页面弹出。如下页图所示。设置逻辑断点-图示设置逻辑断点单击上页Condition按钮,弹出BreakpointCondition对话框,在Expression编辑框中写出你的逻辑表达式,最后按OK返回。这种断点主要是由其位置发生作用的,但也结合了逻辑条件,使之更灵活。控制程序的运行上面我们讲了如何设置各类断点,下面我们来介绍如何控制程序的运行。当我们从菜单Build到子菜单StartDebug选择Go,程序开始运行在Debug状态下,程序会由于断点而停顿下来后,可以看到有一个小箭头,它指向即将执行的代码。控制程序的运行控制程序的运行随后,我们就可以按要求来控制程序的运行:其中有四条命令:StepoverStepIntoStepOutRuntoCursor控制程序的运行Stepover:运行当前箭头指向的代码(只运行一条代码);StepInto:如果当前箭头所指的代码有函数的调用,则用StepInto进入该函数进行单步执行;StepOut:如当前箭头所指向的代码是在某一函数内,用它使程序运行至函数返回处;RuntoCursor:使程序运行至光标所指的代码处。查看工具的使用调试过程中最重要的是要观察程序在运行过程中的状态,这样我们才能找出程序的错误之处。这里所说的状态包括各变量的值、寄存器中的值、内存器中的值、堆栈中的值,为此我们需要利用各种工具来帮助我们察看程序的状态。查看工具的使用弹出式调试信息泡泡(DataTipsPop_upInformation)。当程序在断点停下来后,要观察一个变量或表达式的值的最容易的方法是利用调试信息泡泡。要看一个变量的值,只需在源程序窗口中,将鼠标放到该变量上,你将会看到一个信息泡泡弹出,其中显示出该变量的值。查看工具的使用-变量窗口变量窗口(VARIABLEWINDOW)。在View菜单,DebugWindows选Variables;变量窗口将出现在屏幕上。其中显示着变量名及其对应的值。你将会看到在变量观察窗口的下部有三个标签:Auto,Locals,this选中不同的标签,不同类型的变量将会显示在该窗口中。查看工具的使用|变量窗口查看工具的使用-观察窗口观察窗口(WATCHWINDOW)在View菜单,选择DebugWindows命令的Watch子命令。这时观察窗口将出现在屏幕上。查看工具的使用|观察窗口在上图的观察窗口中双击Name栏的某一空行,输入你要查看的变量名或表达式;回车后你将会看到对应的值。查看工具的使用观察窗口可有多页,分别对应于标签Watch1,Watch2,Watch3和Watch4。假如你输入的表达式是一个结构或是一个对象,你可以用鼠标点取表达式右边的形如+,以进一步观察其中的成员变量的值。
本文标题:VC调试指南.
链接地址:https://www.777doc.com/doc-3378062 .html