Pull to refresh

Comments 16

GDB - очень крутой инструмент, надо только не бояться консоли. С ним есть ощущение всемогущества. Я, может быть, плохо освоил отладчик MS VS, но он выглядит гораздо менее мощным по фичам и вообще не кастомизируемым.

А ещё GDB цепляется к ViM/Emacs и некоторым другим редакторам/средам

Хорошо, что я дебажу linux проги из VisualStudio

честно говоря, не переубедили.

я использую gdb постоянно, но довольно плохо с ним знаком.

reverse-* кстати не работают в многопоточной программе, хотя наверняка я просто не знаю какого то хака.

Хотелось чтобы вы показали как дебажить реальную большую программу.

Иначе я все ещё умею дебажить бабл сорт, но трачу часы на воспроизведение и поиск причины ошибки в многопоточной гуи

Выставляем необходимые breakpoint и работаем с ними. Останавливаться будет вся программа, а не какой-то отдельный процесс.

Меня смущает это: "Ошибка заключается в выражении i < rand() % sizeof array, где мы должны считать количество элементов в массиве, а не количество байт.".

Тут вообще случайная верхняя граница.

Тут вообще случайная верхняя граница.

Там ещё деление по модулю есть ;)

Ну, синтетический пример же.

Понимаю, что "синтетика". Просто заполнять массив до случайного индекса, при этом каждую итерацию цикла будет высчитан случайный индекс. Довольно странный вариант.

Надо было придумать простой кейс, который ловится вот таким способом.И чтобы воспроизводился с разумной вероятностью.

Не зачёт. К статье не подготовлен!

Важная ссылка, хотите ознакомится почти полностью с GDB прочитайте её.

мы будем исполнять команды по типу stepinextdisas или list.

Серьёзно? Ни чего что используются короткие их значения? Да ещё и команды run, continue и другие пропущены.

Используйте их короткие формы: r, c, s, n, d и l.

Ещё есть отладчик EDB основанный на GDB но в графической оболочке. Но этот отладчик вроде только для ассемблера (врать не буду, не знаю точно).

По поводу отладки на разных ЯП, GDB сейчас не мало даёт возможностей отлаживать для ЯВУ. Многие IDE его используют для отладки кода. Потому что есть возможность просматривать как высокоуровнейвый код, так и ассемблерный (машинный).

За то что ознакомился с GDB - зачёт.

За то что лишь поверхностно и очень мало - не зачёт.

За незачёт конечно спасибо, но, к счастью, в моём вузе вы не преподаёте)

А вообще, почему из всей статьи ваше внимание привлекло только одно предложение из вступления? Команды там приведены просто для примера, а не чтобы описать все сценарии использования GDB...

Ну и судя по остальному содержанию комментария, думаю, вам нужно написать свою статью)

А вообще, почему из всей статьи ваше внимание привлекло только одно предложение из вступления?

А не привлекло бы, если бы дальше во всей статье они в таком формате не использовались.

Ну и судя по остальному содержанию комментария, думаю, вам нужно написать свою статью)

Я писал статью про ассемблер где указал именно ссылки на использование GDB. По простой причине, что я его не достаточно изучил, чтоб писать целые статьи по нему. Да ещё и обзор сделать больше, чем сделали до это до меня.

не забываем нажать минус! Ведь я же не прав. )))

Дополнительно для активации TUI можно использовать layouts. Например, layouts regs

Sign up to leave a comment.

Articles