当前位置:  开发笔记 > 编程语言 > 正文

哪个是最好的Linux C/C++调试器(或前端到gdb)来帮助教学编程?

如何解决《哪个是最好的LinuxC/C++调试器(或前端到gdb)来帮助教学编程?》经验,为你挑选了5个好方法。

我教给新手一种"精简"C++编程课程("精简版"意思是没有指针,没有类,只是简单的旧C,加上参考和STL字符串和向量).学生之前没有编程经验,所以我相信使用交互式调试器可以帮助他们理解程序流,变量和递归.

该课程在Linux中讲授.教他们使用gdb只是矫枉过正(他们不会使用也不会理解大多数功能).我只需要简单但易于使用的东西:查看程序现在在哪一行,堆栈中的内容(本地变量,以前的调用等).我看起来类似于旧的Turbo Pascal或Turbo C++ Borland的调试器或Visual Studio调试器.

谢谢,



1> jbleners..:

ddd是gdb的图形前端非常好.其中一个缺点是经典的X界面,但我似乎记得它非常直观.


ddd有一个我见过的最丑陋的用户界面http://imgur.com/UFTBjnW
虽然我对C使用了很多ddd,但它对vector和std :: thing的支持相当差.它经常要求我提供一些错误的名称来设置断点.我不建议学生做他们的第一个C++步骤.
DDD确实是一个很棒的前端.我曾经教过C++.我的学生永远不会理解如何使用gdb,但在向他们展示了ddd的快速浏览(只是非常基础,并告诉他们用-g编译)后,他们很快就变得更熟练地调试他们的代码并理解发生了什么.用户界面可能看起来"陈旧而过时",但为什么要解决明显有效的问题?

2> 小智..:

您可以尝试使用Insight为Red Hat编写的gdb图形前端,或者如果您使用GNOME桌面环境,也可以尝试使用Nemiver.


洞察力是如此棒,但它已从Debian中删除,我无法将其安装在我的Linux上.我不知道谁负责,但他进入我的致命敌人名单,如果我遇到他,他将面临我的愤怒!任何-谁; 还有一种方法可以让它运行但是UI有点搞砸:http://www.baptiste-wicht.com/2012/01/install-insight-debugger-linux-mint-ubuntu/

3> Jon Ball..:

您可能想查看Eclipse CDT.它提供了在多个平台(例如Windows,Linux,Mac OS X等)上运行的C/C++ IDE.使用Eclipse CDT进行调试与使用其他工具(如Visual Studio)相当.

您可以查看Eclipse CDT Debug教程,其中还包含许多屏幕截图.


老兄,学生们需要数周才能学习Eclipse.
-1用于推荐Eclipse
我不会-1分,但IDE糟透了.
Eclipse非常适合Java,但它对于C/C++来说非常糟糕......
既然你们抱怨太多,你会推荐什么?code :: blocks现在还没有更新3年?

4> CMircea..:

除了其他好东西之外,Qt Creator还在所有支持的平台上为CDB,GDB和Symnbian调试器提供了良好的调试器集成.您不需要使用Qt来使用Qt Creator IDE,也不需要使用QMake - 它也具有CMake集成,尽管QMake非常易于使用.

您可能希望使用Qt Creator作为IDE来教授编程,考虑它有一些很好的功能:

非常智能和高级的C++编辑器

项目和构建管理工具

QMake和CMake集成

集成的,上下文相关的帮助系统

出色的可视化调试器(CDB,GDB和Symbian)

支持GCC和VC++

快速代码导航工具

支持Windows,Linux和Mac OS X.



5> HidekiAI..:

也许它是间接的gdb(因为它是一个IDE),但我的建议是KDevelop.由于使用Visual Studio的调试器(专业工作多年),我到目前为止感觉在KDevelop中最舒适的调试(作为家庭中的爱好,因为我买不起Visual Studio供个人使用 - 直到Express Edition问世).与调试步骤,步入等调试的其他IDE(包括Eclipse CDT)相比,它看起来"看起来与Visual Studio类似"(放置断点有点尴尬,因为我不喜欢我喜欢在编码时使用鼠标太多,但这并不困难).

推荐阅读
李桂平2402851397
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有