转自:http://blog.sina.com.cn/s/blog_6377a3100100h40e.html
vc++6.0 调试详细教程
Step into |
Step over |
Step out |
Watch |
Variables |
Registers |
Memory |
Stop Debug |
Call stack |
Disassembly |
Restart Debugger |
2、调试的一般过程
调试,就是在程序的运行过程的某一阶段观测程序的状态。在一般情况下程序是连续运行的,所以我们必须使程序在某一地点停下来。我们所做的第一项工作就是设立断点;其次再运行程序;当程序在设立断点处停下来时,利用各种工具观察程序的状态。
程序在断点停下来后,有时我们需要按我们的要求控制程序的运行,以进一步观测程序的流向。
下面我们依次来介绍断点的设置,如何控制程序的运行以及各种观察工具的利用。
3、设置断点
在VC中,可以设置多种类型的断点,根据断点起作用的方式把这些断点分为三类:
1、与位置有关的断点;
2、与逻辑条件有关的断点
3、与WINDOWS消息有关的断点。
主要介绍前面两种断点。
4、设置位置断点
最简单的是设置一般位置断点:
¡ 把光标移到你要设断点的位置,当然这一行必须包含一条有效语句的;
¡ 然后按工具条上的add/remove breakpoint 按钮或按快捷键F9。
将会在屏幕上看到在这一行的左边出现一个红色的圆点表示这里设立了一个断点
6、设置逻辑断点
有的时候可能不需要程序每次运行到这儿都停下来,而是在满足一定条件的情况下才停下来,这时就需要设置一种与位置有关的逻辑断点。
从EDIT 菜单中选中Breakpoints命令,这时Breakpoints对话框将会出现在屏幕上。选中Breakpoint对话框中的Location标签,使Location页面弹出。
如下页图所示。
8、设置逻辑断点
单击上页Condition按钮,弹出Breakpoint Condition对话框,在expression_r编辑框中写出你的逻辑表达式,最后按OK返回。
这种断点主要是由其位置发生作用的,但也结合了逻辑条件,使之更灵活。
9、控制程序的运行
上面我们讲了如何设置各类断点,下面我们来介绍如何控制程序的运行。当我们从菜单Build到子菜单Start Debug选择Go, 程序开始运行在Debug状态下,程序会由于断点而停顿下来后,可以看到有一个小箭头,它指向即将执行的代码。
随后,我们就可以按要求来控制程序的运行:其中有四条命令:
¡ Step over
¡ Step Into
¡ Step Out
¡ Run to Cursor
¡ Step over :运行当前箭头指向的代码(只运行一条代码);
¡ Step Into :如果当前箭头所指的代码有函数的调用,则用Step Into 进入该函数进行单步执行;
¡ Step Out:如当前箭头所指向的代码是在某一函数内,用它使程序运行至函数返回处;
¡ Run to Cursor:使程序运行至光标所指的代码处。
11、查看工具的使用
调试过程中最重要的是要观察程序在运行过程中的状态,这样我们才能找出程序的错误之处。这里所说的状态包括各变量的值、寄存器中的值、内存器中的值、堆栈中的值 ,为此我们需要利用各种工具来帮助我们察看程序的状态。
12、查看工具的使用
Ø 弹出式调试信息泡泡(Data Tips Pop_up Information)。
当程序在断点停下来后,要观察一个变量或表达式的值的最容易的方法是利用调试信息泡泡。要看一个变量的值,只需在源程序窗口中,将鼠标放到该变量上,你将会看到一个信息泡泡弹出,其中显示出该变量的值。
13、查看工具的使用-变量窗口
Ø 变量窗口(VARIABLE WINDOW)。
在View 菜单,Debug Windows选 Variables; 变量窗口将出现在屏幕上。其中显示着变量名及其对应的值。你将会看到在变量观察窗口的下部有三个标签:Auto ,Locals,this 选中不同的标签,不同类型的变量将会显示在该窗口中。
14、
Ø 观察窗口(WATCH WINDOW)
在View 菜单,选择Debug Windows 命令的Watch 子命令。这时观察窗口将出现在屏幕上。
15、
在上图的观察窗口中双击Name栏的某一空行,输入你要查看的变量名或表达式;
回车后你将会看到对应的值。
16、查看工具的使用
观察窗口可有多页,分别对应于标签Watch1,Watch2,Watch3和Watch4。假如你输入的表达式是一个结构或是一个对象,你可以用鼠标点取表达式右边的形如 + ,以进一步观察其中的成员变量的值 。
相关推荐
关于c++6.0调试的教程,很实用的。部分内容如下: ※My Note 全部由我截图并参考资料进行说明,这其中有大量的内容是调试过程中体会总结才写的.有不当之处请大家更正. ※From 《Visual C++ Debugger》 这本书写得非常...
详细的调试教程,教你一步步的检错,了解vc6.0的使用方法
vc++6.0是目前国内开发C++程序的主要IDE,深入了解它的调试技术很有必要
vc++6.0调试及其实例 vc++6.0调试及其实例 vc++6.0调试及其实例
vc++6.0如何调试,详述了vc6.0的调试方法和思路
开发环境:VC++6.0 基于对话框的MFC编程 ;功能:【一】,TCP Server;【二】,TCP Client;【三】,UDP三者合一;,TCP Server可以同时连接十个客户端,并且可以同时给所连接的客户端同时发送信息;,三者都可以循环...
介绍了17中vc++6.0的详细调试教程,使你在vc++编程路上更加得心应手
调试程序可以帮助了解程序是怎样运行的。 1、如何快速地规范代码缩进格式 选中所需要规范的代码,按shift+F8 2、如何在Release状态下进行调试 Project->Setting…->Project Settings对话框,选择Release状态。“C/...
vc++6.0调试方法(附有快捷键),非常实用的哦!
vc++6.0调试方法.pdf
编程环境vc++6.0调试技巧,使用方法···
初次发稿,是word格式的,自己弄的,挺有用的
串口发送的源码程序,经VC++6.0调试通过,可实现定时持续发送功能
在用VC++6.0调试程序时你是不是还在不断的点击鼠标,这样不但影响速度、效率,还会显得不专业奥,这本快捷键大全能帮助你快速了解VC++6.0的各种快捷键,成为伪高手的必经之路!
vc++6.0调试方法(附有快捷键).pdf
基于Mircosoft VC++ 6.0 MFC编程的串口调试程序源代码,可实现单片机与计算机,计算机与计算机,或自身计算机串口通信
vc++ 6.0使用dbghelp.dll生成dmp内存转储文件,包含h、lib和dbghelp.dll文件,仅供参考。
VC++6.0安装包制作工具,用于发布自己开发好的程序。该InstallShield是专门为Microsoft Visual C++6定制的,所以从Visual C++6开发环境中直接运行InstallShield更快捷方便。 当用户用Visual C++6调试好应用程序后...
非常好的关于VC++ 6.0软件入门与调试基础操作的教程,从豆丁上弄下来的,很不容易啊,果断收藏吧
破解版的vc++6.0,非常适合初学者,拥有非常强大的调试模块,可以帮助你快速找到错误