it-swarm-ru.tech

Какой лучший отладчик Linux C / C ++ (или интерфейс для gdb) поможет в обучении программированию?

Я преподаю новичкам "облегченный" курс программирования на C++ ("облегченный" означает отсутствие указателей, никаких классов, просто старый C, плюс ссылки и строку и векторы STL). У студентов нет предыдущего опыта программирования, поэтому я считаю, что использование интерактивного отладчика поможет им понять ход программы, переменные и рекурсию.

Курс преподается в Linux. Научить их использовать GDB просто излишне (они не будут использовать и понимать большинство функций). Мне просто нужно что-то простое, но простое в использовании: чтобы увидеть, в какой строке находится программа, что находится в стеке (локальные переменные, предыдущие вызовы и т.д.). Я похож на старый Turbo Pascal, отладчик Turbo C++ Borland или отладчик Visual Studio.

Спасибо,

106
omer.gimenez

DDD это графический интерфейс для GDB, который довольно хороший. Одним из недостатков является классический интерфейс X, но, кажется, я помню, что он довольно интуитивно понятен.

35
jbleners

Вы можете попробовать использовать Insight графический интерфейс для GDB, написанный Red Hat. Если вы используете среду рабочего стола GNOME, вы также можете попробовать Nemiver .

25
Narek Babajanyan

Вы можете проверить Eclipse CDT. Он предоставляет C/C++ IDE, который работает на нескольких платформах (например, Windows, Linux, Mac OS X и т.д.). Отладка в Eclipse CDT сравнима с использованием других инструментов, таких как Visual Studio.

Вы можете проверить учебник по Eclipse CDT Debug , который также включает в себя несколько скриншотов.

16
Jon Ball

Qt Creator , помимо других полезностей, также имеет хорошую интеграцию отладчика для CDB, GDB и отладчика Symnbian на всех поддерживаемых платформах. Вам не нужно использовать Qt для использования IDE Qt Creator, равно как и QMake - он также имеет интеграцию с CMake, хотя QMake очень прост в использовании.

Возможно, вы захотите использовать Qt Creator в качестве IDE для обучения программированию, подумайте, что у него есть несколько полезных функций:

  • Очень умный и продвинутый редактор C++
  • Инструменты управления проектами и сборками
  • Интеграция QMake и CMake
  • Интегрированная контекстно-зависимая справочная система
  • Отличный визуальный отладчик (CDB, GDB и Symbian)
  • Поддерживает GCC и VC++
  • Инструменты быстрой навигации по коду
  • Поддерживает Windows, Linux и Mac OS X
14
CMircea

Возможно, это не относится к GDB (потому что это IDE), но мои рекомендации будут KDevelop . Будучи довольно испорченным отладчиком Visual Studio (профессионально работающим много лет), я до сих пор чувствовал себя наиболее комфортно в KDevelop (как хобби дома, потому что не мог позволить себе Visual Studio для личного использования - до выхода Express Edition). ). Он выглядит "чем-то похожим" на Visual Studio по сравнению с другими IDE, с которыми я экспериментировал (включая Eclipse CDT), когда дело доходит до отладки пошагового, пошагового и т.д. (Установка точек останова немного неудобна, потому что я не не люблю использовать мышь при кодировании, но это не сложно).

12
HidekiAI

Я работаю для TotalView , и у нас есть бесплатная версия для нашего коммерческого отладчика Linux C++ (также Fortran, MPI и потоки).

http://www.roguewave.com/company/academic-programs.aspx

Стоит отметить, что у нас также есть сильно сниженные цены на лицензии "на уровне класса".

См. http://www.roguewave.com/products/totalview/resources/videos.aspx несколько быстрых видеороликов, иллюстрирующих работу продукта.

Некоторые специфические особенности, которые TotalView имеет для C++:

  • Автоматическое преобразование классов коллекции STL во что-то разумное
  • "Погружение" на указатели, чтобы увидеть, на что указывают
  • Простое "приведение" указателей к массивам
  • Возможность просматривать одно поле данных в каждом экземпляре объекта в массиве объектов.
  • Установить точку останова на всех экземплярах класса

Крис Готбрат Менеджер по продукту TotalView Rogue Wave Software

4
Chris Gottbrath