- 先贴代码
#include <windows.h>
void crash()
{
int wjr = 3;
int* p = NULL;
*p = 10;
}
void function()
{
crash();
}
int WinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPSTR lpCmdLine, _In_ int nShowCmd)
{
function();
return 0;
}
- VS2015工程设置


- 崩溃时, 首先打开windows 日志管理

- 看到错误偏移量为1002 在看map文件 最近的是1000地址

- 两个地址相减 1002-1000 = 0x02 在看cod文件

- 可以知道是第8行 *p = 10崩溃

自己的项目查看



本文通过一个简单的C++示例介绍了如何在Visual Studio 2015中定位因尝试给空指针赋值而导致程序崩溃的问题。通过使用Windows日志管理和MAP文件来确定崩溃的具体位置。
1万+

被折叠的 条评论
为什么被折叠?



