当前位置:首页 > 攻略

【vc60教程】VC 6.0单步调试

VC调试技术程序错误类型大致可分为语法错误和逻辑错误两种类型。语法错误可以通过编译器的错误消息更正。但是,逻辑错误是不可能的,因此在每个主要集成开发环境(IDE)中分析和消除程序中的逻辑错误,消除逻辑错误的过程也称为调试(或调试),并描述了VC 6.0调试环境。

常用的调试命令如下:

Step into命令快捷方式:F11逐步执行每条语句。函数发生时,进入函数并单步执行该语句。

Step over命令快捷键:F10逐步执行每个语句,但当函数出现时,系统会将函数作为“一个语句”执行,以自动执行内容,而不是在函数内逐步执行。

Run to cursor指令捷径:Ctrl F10系统会自动在使用者游标指向的陈述式之前执行。(此功能有助于集中关注有问题的地方,从而节省调试时间。)。

Go命令快捷键:F5系统编译、链接、自动运行程序,但程序在设置断点的位置停止。

BuildExcute命令快捷键:Ctrl F5系统提供Pause,可以编译、链接、执行编译后的程序代码、不停留在中断点,但在程序执行结束后,用户可以轻松观察输出。

Stop debug命令快捷方式:Shift F5此命令用于终止动态调试过程。

动态调试的主要方法——watch程序编译通过后,如果使用step into、step over、run to cursor和go命令在程序运行过程中停止系统,系统将进入调试状态。

调试过程中,程序运行窗口将在后台发送,程序将显示在系统窗口中。其中黄色箭头指向系统下一步要执行的语句。系统窗口下面的监控窗口就是我们要介绍的重点。watch窗口左右分为两部分。左侧部分暂时称为“自动监视区域”(即variable窗口),右侧部分称为“手动监视区域”。(watch窗口)自动监视区域是系统自动跟踪的变量名。默认情况下,系统显示auto标记,该标记显示在执行上一步期间程序中更改的变量。Locals标记跟踪函数中的所有变量。

上面的find sourse组合框表示当前在locals标记下跟踪的变量所属的函数。说明:如果find sourse组合框的内容变成灰色,则说明系统正在运行程序或等待输入端的数据(通常在这种情况下),因此要注意程序运行窗口的内容。但是,一般来说,受自动监视区域监视的变量是不够的。有时需要自己定义需要跟踪的变量——。在这种情况下,必须在“手动监控”区域中输入变量名(系统合法识别的表达式),以跟踪所需的值。

注意:如果用户定义了指向数组的watch,则变量左侧会出现一个小''符号,表示数组可以“扩展”——,以显示其中每个下标表示的内容。这与其他高级语言的IDE略有不同。

VC的人性化设置:如果有很多用户定义的变量,则通常需要滚动屏幕才能看到所有变量——VC。

设置断点和一些基本调试技术断点(breakpoint)是指调试期间,每当在断点上执行时自动停止(除非使用bulidexcute命令),否则执行编译后的代码。严格地说,不被认为是调试命令)。通常与go和step over命令一起使用

如何设置断点:在程序代码中,转到需要设置断点的行,然后按F9键,代码行左端将出现红点——。这是VC断点的标志。以后的程序在调试期间每次运行时都会在此处停止,因此用户可以轻松地观察watch的内容。删除断点的命令与设置断点的命令相同。如果在设置断点的地方再次按F9键,左端的红点将消失,断点将被删除。有时我们不需要断点,但不需要“临时”。此时,如果在设置断点的位置按Ctrl F9键,您将看到原始实心点变为空圆3354断点。恢复断点的功能也是按Ctrl F9键。当程序很长,需要大量断点时,此功能特别有用。

条件断点技术——实际上是在一些分支语句内部设置断点。当程序的一个部分有问题时,此技术特别有用。断点设置位置信息这个因人而异,可以说是相当艺术的内容。我不想再说了,但有一个基本原则可以说是断点,所谓断点,或者说是“分段”点。也就是说,在需要连续观察的地方,必须使用step over或step into命令。(阿尔伯特爱因斯坦,美国作家)。

嗯,调试命令基本上就是这些。我想谈谈调试过程中我个人的经验和体会。

1.动态调试不是万能的。动态调试几乎可以解决所有非算法问题,但动态调试花费了很多时间,这也是毋庸置疑的——,会干扰程序员的思维。其实相当多的错误往往是因为按错了键盘。这个错误在动态调试中很难发现,所以在开始调试每个程序之前,必须再次整理思路,仔细阅读程序。用所谓的“静态错误”的方法,可以先解决几个明显的低级错误,确认调试的重点。这样不仅可以大大缩短调试时间,还可以更加包容自己

易发现一些思路方面的错误。

2.调试时思路要跟着程序转。说白了就是要集中精力于正在调试的语句段和正在变化的变量上。

3.模块化能有效缩短调试时间。其实模块化不仅仅能有效的缩短开发时间,更能有效的缩短调试时间。首先,模块化使得我们够方便的使用step over命令,而减少断点的设置。其次,程序出错的地方往往就是在几个关键点上,使用了模块化设计思路以后,我们就可以集中精力在那些关键点上,省去了不必要的单步调试。当然,能面向对象就更好了。

4.多用断点和run to cursor命令,减少单步调试的使用——那样太费时间了。

5.调试不要破坏程序的原本结构。许多人喜欢在调试过程中输出一些中间变量的值,认为这样做比较直观——当然,这也是一个很重要的手段,尤其在反复递归和循环嵌套的时候。不过我不推荐在非递归的程序中使用这种方法。这种方法最大的问题就是破坏了程序原本的结构和逻辑,除非你在原本程序设计时就想到这一点。这点在程序很长或者思路很复杂时尤为明显。否则为什么所有的编译模式的程序语言都不约而同的提供了watch这一手段?解释模式的程序语言?那是没有办法……

6.遇到bug时不要急于修改程序。也就是不要乱打补丁。道理和第5条一样,要先仔细分析,然后在决定是否要修改——总之,要冷静。尤其是删除程序段的时候,我建议先把认为不需要的程序段先注释掉。等到调试成功后再删不迟。

1.《【vc60教程】VC 6.0单步调试》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《【vc60教程】VC 6.0单步调试》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/gl/2505776.html

上一篇

【流星蝴蝶剑大招秘籍】流星蝴蝶剑,玩家们武侠梦想的起点

下一篇

【手机qq主题怎么换】手机QQ免除新的皮肤主题。

【vc60教程】在Vc60上*。生成dll的过程

【vc60教程】在Vc60上*。生成dll的过程

vc60教程相关介绍,1创建空的dll项目。 2.复制源文件到s2022 2.创建新的connNa /* do not edit this file-it is machine generated */ #include ...

【vc60教程】我想知道如何开发软件。请看Microsoft  Visual  C  6.0

【vc60教程】我想知道如何开发软件。请看Microsoft Visual C 6.0

vc60教程相关介绍,Microsoft Visual C 6.0被广泛用作适合初学者编写C语言的编程软件。但是第一次使用这个软件的学生完全不知道如何使用,连中文版本都不知道。接下来,我将介绍如何使用Microsoft V...

【vc60教程】从入门到精通的c语言:到c的世界。

【vc60教程】从入门到精通的c语言:到c的世界。

vc60教程相关介绍,在学习编程语言之前,首先要做的是熟悉:用于语言的开发软件——开发环境。下面介绍了c语言常用的开发环境。 1.1.1 C共同开发环境 c语言常用的集成开发环境包括microsof visual c6.0...

【vc60教程】Visual  C  6.0软件安装包和安装教程

【vc60教程】Visual C 6.0软件安装包和安装教程

vc60教程相关介绍,安装步骤: 1.右键单击软件压缩包,然后选择“解压缩到中文版本VC6.0(3264bit)” 2.左键双击Setup文件 3.单击“下一步” 4.再次单击“下一步” 5.建议安装在c : \ prog...

【vc60教程】瓦罐茶哪个强?沃尔沃新一代V60的新设计,33.99万件为信仰买单。

【vc60教程】瓦罐茶哪个强?沃尔沃新一代V60的新设计,33.99万件为信仰买单。

vc60教程相关介绍,不是所有的牛奶都叫特伦索。同样,并非所有的旅行车都是沃尔沃。对于罐子粉来说,沃尔沃V60可以说是信仰性的存在。不管是设计、实用性还是价格,那都是最好的选择。甚至在民间也有“世界上有两种罐子。出现了“一...

【vc60教程】VC  6.0软件纯安装教程,感谢刚进入编程行业的新手。

【vc60教程】VC 6.0软件纯安装教程,感谢刚进入编程行业的新手。

vc60教程相关介绍,大家好,我是本文的“软妹”。Visual C可以对C/C程序执行设置、打开、浏览、编辑、保存、编译、链接、调试等多种操作。特别是在国内产品设计领域占有重要地位。今天,我们将一起分享VC版本6.0纯安装...

【vc60教程】在c语言文章VC6.0中运行c语言程序

【vc60教程】在c语言文章VC6.0中运行c语言程序

vc60教程相关介绍,今天,我们将分享在VC6.0环境下编写C语言程序的基本步骤,为初学者打开C语言学习的第一扇门。具体步骤如下(如果需要软件资源,可以留言): 1)新工作区 单击文件-新建-工作区或Ctrl N,创建新工...

【vc60教程】大家一起来学程序设计

【vc60教程】大家一起来学程序设计

vc60教程相关介绍,一、C/C开发过程 1.编辑(编辑):使用文本编辑工具输入程序代码,源代码*。c、*。生成CPP。 2.编译:语法分析错误,翻译生成大象程序*。obj 3.链接(Link):与其他大象程序或库链接装配...