访问空指针一定会使程序死掉吗

1。访问空指针一定会使程序死掉吗?
2。访问空指针致使程序死掉的机制是什么呢?
谢谢

>> 1。访问空指针一定会使程序死掉吗?

访问空指针是没有任何问题的,但是不能用空指针访问它指向的对象(即对空指针进行解引用操作)。

对空指针进行解引用被 C 标准规定为其行为是无定义,所以虽然常见的现象是程序的执行被中断,然而也可能出现其它表现形式,甚至也可无任何异常、程序运行正常。

>> 2。访问空指针致使程序死掉的机制是什么呢?

一般的情况是由于操作系统提供的内存保护机制导致了程序运行的中断。

 

 

参见http://bbs3.chinaunix.net/thread-1156149-1-1.html

原文地址:https://www.cnblogs.com/WeRtogether/p/1573185.html