c语言中指针悬空

来源:互联网 发布:三唑仑在淘宝叫什么 编辑:程序博客网 时间:2024/04/29 23:06

指针悬空

指针悬空在我们使用指针的时候很容易被忽视,主要的表现是:指针所指向的内存

释放,指针并没有置为NULL,致使一个不可控制的指针。

#include<stdio.h>#include<stdlib.h>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),使我们检查错误

变得简单。



1 0