共享关于站长调试的文章。 详细介绍Dev C调试器方法
Dev C是一个兼容且易于使用的IDE。 为了以防万一,记录一下调试方法吧。
调试器是控制编译器逐行执行代码,在过程中可以清晰地看到每个变量值的变化和函数的调用过程等,进而发现隐藏在程序中的错误和低效代码。
作为免费的开源C/C IDE,Dev C具有内置的GCC编译器和GDB调试器,可以编译并运行程序,也可以调试程序。 本节以完整的c语言程序为例,系统地学习如何使用Dev C调试器。
#includestdio.hintadd(inta,int b ) { int c=a b; 返回c; (}int main ) ) { int a=10,b=20; intsum=add(a,b ); printf(sum=%d ),sum ); 返回0; } Dev C调试器缺省情况下,只要不出现中间错误,程序就会从头到尾即时运行。 所谓的“运行时错误”包括读/写内存失败、数组越界等。 要暂停程序的执行,必须设置断点。
断点(BreakPoint )可以很容易地捕捉到障碍物,汽车遇到障碍物无法通行,程序遇到断点时暂停执行。 Dev C在程序中设置断点的方法很简单。 要想在哪一行代码中暂停执行,直接单击代码所在行的行号即可。 例如:
图1添加1 Dev C断点
如上图所示,我们成功地在第七行代码中添加了断点。 注:单击“编译运行”按钮(快捷键为“Fn F11”)运行程序时,断点不会生效。 “调试”按钮) )快捷键只有在点击(Fn F5 ) )运行程序时才有效。
图2调试器
调试功能只能在" Debug "模式下使用。 如图2所示,本节选择“TDM-gcc4.9.264位调试”模式。
单击“调试”按钮或按快捷键“Fn F5”时,程序将一直运行到在第七行代码处暂停(当前代码尚未执行),如下所示:
图3断点工作正常
在程序临时运行时,可以使用“调试”窗口中的按钮查看某些变量的值,也可以控制编译器继续运行程序。 在整个调试窗口中,常用的按钮和含义如下:
添加显示:显示变量的值,可以看到值的变化。 下一步:控制编译器在下一行执行语句; 步入:与“下一步”按钮功能类似,但在程序中调用自定义函数时,此按钮可以进入函数中并继续调试函数中的代码,但不能“下一步”按钮。 跳过:继续运行程序,遇到下一个断点并暂停运行; 停止运行:停止调试器。 举个例子,点击“添加审阅”按钮监视变量sum的值的变化,添加后如下图所示。
图4添加要监视的变量
初始状态下,变量sum的值为0。 单击“下一步”执行第七行代码时,箭头光标指向第八行,变量sum的值仍为0。 然后单击“下一步”执行第8行代码,箭头光标指向第9行,变量sum的值为30。
当箭头光标指向第8行代码时,如果单击“步入”(step in )按钮,箭头光标将进入add ()函数并指向第3行代码。 感兴趣的人可以自己试试。
在调试过程中,Dev C支持同时监视多个变量,还支持在程序中设置多个断点,如下图所示。
图5监视多个断点和多个变量
Dev C调试注意事项对于修复后的程序,在调试程序之前请务必编译程序。
现在很多人都在使用Windows 10操作系统,但是遗憾的是,即使是最新版本的Dev C (现在的最新版本是5.11 ),与Windows 10的兼容性也不好,有时会出现各种奇怪的问题
例如,在使用某个Dev C版本调试c程序时,如果遇到endl,它会“锁定”,并且无法继续调试。 在该情形下,例如通过用“ n”替换endl,所述解决方案是容易解决该问题的解决方案。