在Visual Studio中调试C++代码:在非预定时间内进行分解

Kel*_*vin 3 c++ debugging visual-studio

我有一个关于在Visual Studio中调试的问题(2010年,如果它真的很重要).有时我正在运行一个应用程序,我想打破它来调试或查看它挂起的位置等.但是,我发现很常见的"突破点"似乎是在一些随机的.c文件中在标准库中.我理解为什么这是(它在某处执行某种方法),但我想知道它在我编写的代码中的最后一点是什么.有没有办法做到这一点?如果我尝试"步",调试器似乎总是返回类似"没有代码来调试当前位置"或类似的东西,我猜这意味着它正在通过一些机器代码.再说一遍,这很好,但我想知道main.cpp文件中最后一次执行的调用是什么; 有没有办法获得这些信息?调用堆栈似乎也没有帮助,它总是有一个非敏感调用列表,即使我可以找到来自我的main.cpp的调用堆栈中的最新点,它似乎没有提供任何有用的信息(如行号或函数名称......我认为它显示了错误的名称).

大多数人在这种情况下做了什么?我道歉,我知道我是初学者,我很抱歉我没有具体的例子,但我觉得我经常在工作中看到这一点.

任何帮助表示感谢,谢谢!

ķ

sha*_*oth 5

暂停程序后,在该点观察调用堆栈(Debug-> Windows-> Call Stack),找到代码最后一层的位置,然后单击调用堆栈窗口中的相应行.