1.非关联化一个空指针总是导致段错误!
-
#include <stdio.h>
-
int main (void)
-
{
-
int *ptr = NULL;
-
*ptr = 0;
-
return 0;
-
}
-
输出结果:
-
段错误(核心已转储
-
-
非关联化一个空指针,然后分配(写一个值到一个不存在的目标)也通常会导致段错误。
-
#include <stdio.h>
-
int main (void)
-
{
-
int *ptr = NULL;
-
*ptr = 1;
-
return 0;
-
}
-
输出结果:
-
段错误(核心已转储)
下面的代码包含一个空指针,但当编译通常不会导致段错误,值是未使用的。因此,废弃通常会被优化掉,死代码消除。