指针悬空
指针悬空在我们使用指针的时候很容易被忽视,主要的表现是:指针所指向的内存
释放,指针并没有置为NULL,致使一个不可控制的指针。
#include
#include
int *pointer; void func() { int n=8; pointer=&n; printf("pointer point data is %d\n",*pointer); // pointer=NULL; } int main() { func(); sleep(2); printf("%d\n",*pointer); return 0; }
当空间被释放时,如果把该指针不置为NULL,指针将指向一个不可预知的地址,当置为NULL时,则会发生段错误(segment fault),使我们检查错误
变得简单。
