抛出异常后找不到我的源代码

时间:2015-09-01 12:42:02

标签: c++ debugging visual-studio-2015

我一直在使用visual studio开发单线程 C ++ 程序。我一直在运行“debug”版本并且通常如果我遇到某种崩溃,调试器会帮助我指出代码中的坏行。有时崩溃发生在 C ++库函数中,在这种情况下,我会查看“调用堆栈”窗口,并可以快速发现我的代码调用库中的最后一次调用功能。

但是现在我正在努力解决“Exception thrown”问题,其中"strcat.asm"发生了崩溃,但调用堆栈没有显示任何代码我认识。在调用堆栈窗口中,我可以看到像"ntdll.dll!__RtlUserThreadstart@8()这样的东西 - 无论这意味着什么!

如何找到导致此次崩溃的代码部分?

更新:经过多次痛苦,我终于发现这个bug基本上是

value[idx] = a;

其中idx取值-1。毫无疑问,这已经破坏了堆栈。

0 个答案:

没有答案