Здравствуйте, гость ( Вход | Регистрация )
|
barabaka |
17.11.2011, 1:50
Сообщение
#1
|
|
Студент ![]() Группа: Участник Сообщений: 40 Регистрация: 14.11.2011 Из: Санкт-Петербург Пользователь №: 2999 Спасибо сказали: 1 раз(а) Репутация: 2
|
Знаете ли вы какие-нибудь эффективные приёмы отладки для кода со множеством указателей и их массивами? Как узнать где именно свалилась программа, без пошаговой отладки? В коде туча указателей и массивов указателей
|
|
|
|
![]() |
|
Влад |
17.11.2011, 14:31
Сообщение
#2
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 146 Регистрация: 20.3.2009 Из: Санкт-Петербург Пользователь №: 627 Спасибо сказали: 46 раз(а) Репутация: 8
|
Цитата(barabaka @ 17.11.2011, 2:50) Link Как узнать где именно свалилась программа, без пошаговой отладки? В коде туча указателей и массивов указателей Рефакторинг. Подозреваю, что там еще и указатели "голые", чисто сишные. Выбросить код с "тучей указателей и массивов указателей" в помойку и написать заново. Опыт показывает, что получится быстрее, чем все это хозяйство отлаживать, раз уж нет ясности, "где свалилась программа". А свалиться она может в любом месте, если хоть один указатель из этой тучи испорчен. Причем, место, "где свалилось", может ровно никак быть логически не связано с местом, "где портится" - просто стрельба по памяти... При другом запуске - свалится в другом месте. |
|
|
|
barabaka Отладка 17.11.2011, 1:50
Алексей1153 1) убрать все точки останова
2) запустить на отлад... 17.11.2011, 6:28
ViGOur Как вариант ставить ассерты.
Но в основном только ... 17.11.2011, 7:19
Iron Bug intel'овские тулзы для отладки. они отлавливаю... 17.11.2011, 9:52
barabaka Вот!А это интересно.Надо попробовать.
Цитата(... 17.11.2011, 13:36
Iron Bug Цитата(barabaka @ 17.11.2011, 16:36) То,ч... 17.11.2011, 13:47
barabaka Выкинуть и переписать конечно здорово,но времени н... 17.11.2011, 17:21![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 6.1.2026, 15:14 |