调试Visual Studio c++应用程序并查找导致崩溃的特定函数
Debugging Visual Studio C++ applications and finding specific functions that caused the crash
我已经写了一个BSP级渲染器,并解决了所有具体的-这一行导致崩溃-错误。问题是,现在,我得到一些非特定的错误,如:
"Unhandled exception at 0x77318db9 in Lantern.exe: 0xC0000005: Access violation writing location 0x00000014."
当我关闭我的程序时,在Visual Studio中,会弹出一个像_file.c这样的窗口头文件,但它不是特定于错误可能是什么。当加载具有特定类型的BSP地图数据的程序时,我得到其他内存问题。有谁对如何调试这些一般性问题有建议吗?我有一个错误记录器,这样我就可以看到在出现问题之前正确完成了哪些功能,但它并不总是帮助我确定错误。
是否有使用Visual Studio 2010进行错误调试的指南?当遇到类似于我所描述的错误时,您如何调试它们?是否有办法找到导致错误的函数?
谢谢!
看看这个特定的错误,我猜你在某个地方有一个空指针,因为你不太可能在0x00000014附近戳。
在调试器中运行程序,当它出错时,您应该在错误发生的地方,或者能够查看调用堆栈窗口,以便在执行过程中进一步移动,并可能找到错误的地方。如果你正在破坏堆栈,那么它将更难以追踪。
如果您仍然难以解释结果,可以使用# If 0去掉您怀疑可能出错的函数部分,以缩小可能性。
我知道错误是什么了。显然,在使用SDL时,如果链接SDL,应用程序将出现问题。lib和SDLmain。Lib中带有#pragma注释,而不是通过项目设置中的链接器。
可能是他们的代码有bug,不确定。
干杯!
相关文章:
- 内联映射初始化的动态atexit析构函数崩溃
- 执行函数时导致崩溃的变量
- C 回调函数在对象 pascal 上崩溃
- 除非使用某些寄存器,否则函数挂钩会崩溃
- Linux c++.在预加载的共享库中定义的基类的崩溃调用函数
- Rcpp 函数在打包时使 RStudio 崩溃
- 使用 MS 绕道挂钩在调用钩子函数时崩溃C++
- 矢量迭代器在尝试调用函数时使我的程序崩溃
- 使用唯一指针调用函数会使我的程序崩溃
- 钩/绕道 d3d9 (现在/结束场景) - 似乎调用我的函数然后崩溃
- 程序在为链表创建推送函数时崩溃
- 递归导致程序崩溃,但 while 循环中的相同概念不是来自C++析构函数
- 从 C# 模块调用C++函数引发随机崩溃
- C++设置器函数崩溃
- EGL 在第一次 opengl 函数调用时崩溃
- 我需要做一个空函数循环回来,而不会让它崩溃或跳过
- 当我使用 ALSA lib 的函数"snd_pcm_readi"时它崩溃了
- 在C++中删除指针数组时析构函数崩溃
- 使用向量的函数崩溃,调试器说访问冲突读取位置
- 我的单例中的数组在离开函数后没有保留信息,然后在尝试再次访问信息时崩溃