前言:

看到不少同学在学习过程中总会碰到各种与自己期望不符的结果而不知所措,如运行结果不对,程序运行崩溃、输出乱码等这种语法正确编译能通过而逻辑不正确的情况,发生这类问题大多都是因为我们无法掌控编译器和预测程序运行过程导致的,使得程序在执行过程中已经发生问题而没有被我们发觉。而最好的解决办法就是断点调试!

本文将带领大家以VC6编译器为例,学习如何断点分析和调试我们的C程序,让大家具备基本的断点调试能力!

以下正文:

当程序运行起的瞬间,程序就会马上退出,感应快的你可能会看到一个一闪而过的黑窗口以及似乎有点内容的输出。这就是一个程序的从生到死的过程,快如闪电丫。

那么,我们如何让程序不一次性执行完,定格在莫一处呢? 特别是对于查找问题,调试bug。如果当你意识到这些问题时,断点调试这个技巧你就应该马上掌握了!

 VC6断点调试之如何下断点(上)

断点第一步:设置断点(什么是断点?就是程序停止、断开的一个位置),将鼠标放到你想要程序停止的位置点击一下,然后按F9键,如下图

VC6断点调试之如何下断点(上)

会看到一个深红色的大圆点!这个就是“断点”了,这个时候,当在调试情况下运行这个程序的时候,程序执行时就会停在这里。怎么样?不信,那就试试,按F5键

VC6断点调试之如何下断点(上)

怎么样,看到了吗?程序现在没结束,甚至一句话都没输出呢!(应该输出100行www.dotcpp.com)

而原来大红色的圆点上还多了一个黄色的箭头!什么意思呢?这个黄色的箭头就是表示程序将要执行的语句!

也就是说接下来要执行这个printf,但还没有执行!所以屏幕上一句输出也没有!

接下来,继续按F5向下执行,直到遇到下一个断点,此时屏幕上会输出一行www.dotcpp.com,如图

VC6断点调试之如何下断点(上)

同时请注意,下方i的值已经变成了1!,这说明循环已经执行了一次!

大家可以继续按F5继续执行,继续观察变化!

如果希望结束断点的话,可以在断点所在行,继续点击一下鼠标左键即可取消断点,再按F5即可和正常一样执行完程序。

怎么样,会了吗?

 

当然还没结束,除了设置断点F5继续执行以外,还可以单步执行,快捷键F10,怎么用呢?

还是这个程序,第一次F5以后,也可以按F10单步执行一句,发现黄色箭头往下走一行,同时屏幕多输出一句话。效果如图:

VC6断点调试之如何下断点(上)

大家可以自行尝试,可以F10一直逐行单步执行。同时注意观察下方变量的变化情况,来加深对程序执行过程的理解!

 

请同学们熟练掌握F5、F9、F10快捷键的使用方法,配合程序,观察变量、函数返回值等信息的变化情况,加深对程序的理解!

以上


点赞(0)

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

Dotcpp在线编译      (登录可减少运行等待时间)