什么是空指针异常(java.lang.NullPointerException)以及它们的原因是什么?
可以使用哪些方法/工具来确定原因,以便停止异常导致程序过早终止?
#include <iostream>
int main()
{
int* i = 0;
int x = (*i);
std::cout << x;
}
Run Code Online (Sandbox Code Playgroud)
当我编译并运行它时,上面的程序将崩溃Visual Studio 2010,我知道它崩溃,因为我将指针设置为0.
我想知道的是,访问null pointer标准中定义的C++,还是未定义的,我很幸运,因为我的编译器/计算机/操作系统,我的程序崩溃了
如果定义了,当我尝试访问空指针时C++会保证什么?