您的位置:首页 > 其它

Code::Blocks程序调试技巧

2017-04-07 17:01 295 查看
在开始学习编程的时候,编写的程序一般都比较短小,出了BUG通过逻辑定位或直接写cout输出到窗口里就足够了,往往用不到调试功能。但是在比较大的程序中,通过思考或写cout输出去定位BUG就比较困难和低效了。常用的IDE都带有调试工具,VisualStudio和Code::Blocks都带有调试工具,而且VS的调试公具更加强大,只是因为VS太大,占内存(VS2013安装后占2.8G的硬盘空间),相比之下Code::Blocks很小巧,安装后也只占200MB多一点的磁盘空间。而且Code::Blocks有免安装的版本,感觉可以把它装到U盘里想带哪儿带哪儿。所有我现在平常编程不用VS了,转用Code::Blocks了。今天就教教大家如何使用Code::Blocks (16.01)实现调试来快速定位程序Bug(VS等其他开发环境也大同小异,一通百通)。

首先打开要调试的项目,点击编译,发现无错误,无警告,很开心~

然后点击那个绿色的按钮运行,发现程序输出错误的结果(逻辑错误),或程序崩溃(运行错误)了。人也跟着崩溃了。

接着就需要开始调试了:



1、直接调试

这个方法只适用于程序会崩溃(运行错误)的情况,无法发现逻辑错误。而且在程序崩溃后,编辑器界面的光标会定位到程序崩溃的代码处,而且左边会有黄色箭头。然而,如果程序的BUG并不会导致立即崩溃,而是随机崩溃的,这种方法也就无效了。

2、运行到光标处

这个方法适用于多步调试,排除正常代码段(缩小BUG范围)的情况。如果运行到光标处仍无程序错误,说明在光标前运行过的代码段是没有错误的。

3、逐过程、下一行、跳出、下条指令、逐语句

小范围,单步调试使用它们

4、设置断点:在编辑器代码左边,行号数字右边空白处左键单击即可设置断点(红色圆点)



5、Watch变量窗口:可以实时查看函数内变量值和全局变量值



6、堆栈窗口:自底向上显示函数的调用顺序情况,选中不同函数,可以看到不同函数内的Watch变量



有人可能不知道如何调出这两个窗口,方法如下:



或者:



关于如何实现带参数的调试:点击项目->程序参数 即可设置参数

可以切换不同的窗口视角,适用于不同的使用情况(默认布局适用于一般情况,最小化布局适用于单纯长时间敲代码,调试布局适用于调试程序):



附看到的一篇介绍使用command命令调试程序的文章(大神专用):

http://www.tuicool.com/articles/aUzimq

和百度文库里介绍调试方法的PPT-单步调试入门(写得比我详细比我好……):

https://wenku.baidu.com/view/ac64776dee06eff9aef807f9.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  调试 bug ide