Найти предыдущую строку отладки в Visual studio 2005 - PullRequest
0 голосов
/ 03 марта 2010

Я пытаюсь отладить проект C ++ в VS 2005.

В режиме отладки, как я могу найти предыдущую строку, которая была выполнена.? Т.е. рассмотрим, что элемент управления находится в строке 5000. Как я могу найти предыдущую строку, которая была выполнена перед переходом к строке 5000. На самом деле там задействовано мало операторов goto. Стек вызовов просто отображает предыдущие функции, которые были вызваны.

Хотя я знаю, что использовать goto не очень хорошая практика, это существующий проект, который я отлаживаю. Заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 03 марта 2010

Эта информация потеряна. Вы должны сделать один шаг в коде или добавить запись в журнал, чтобы узнать, какие строки были выполнены.

0 голосов
/ 03 марта 2010

Если вы можете перекомпилировать исходный код (что, я думаю, можно, так как вы получили отладочную информацию), вы можете посыпать код вызовами OutputDebugString каждый с разным битом текста - например, перед каждым ярлыком и каждым переходом.

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

0 голосов
/ 03 марта 2010

Если вы попали в строку 5000 с помощью перехода или перехода (а не посредством вызова), то нет записи о том, откуда вы пришли. Вам просто нужно вернуться и проследить код и посмотреть, как он переходит к строке 5000.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...