11问答网
所有问题
为什么有时要对指针比如说*p,赋值NULL呢?有什么意义
如题所述
举报该问题
推荐答案 2009-12-12
C语言中的变量在使用前必须先定义并赋值,指针变量值在定义后也要先赋值才能使用。定义指针后,如果不对它赋值,指针的值就不确定,不能明确它指向的内存单元。因此,引用未赋值的指针,可能会出现难以预料的结果。为避免这种危害,在定义指针时,可先将它的初值置为空。如int *p=NULL。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://11.wendadaohang.com/zd/FPMFS8SF7.html
其他回答
第1个回答 2009-12-12
相当于把指针置空 可以避免指针无具体指向而导致指针错误
如果不这样做的话可能指到某内存区而导致指针混乱 这可能发生危险
所以在指针所指内存内容删除后都得赋值0
第2个回答 2009-12-12
防止溢出
相似回答
C语言中int
* p
=
NULL
的意思?
答:
int *p=NULL指向一个空指针,等于 int *p=0; NULL等于0;
可以随时让这个p指向其他地址。定义指针,将它初始化为NULL,这样做编程更规范
。
大家正在搜
为什么要对堆栈指针重新赋值
为什么要对sp重新赋值
对两个指针互相赋值应注意点
一个指针赋值给另一个指针
把指针赋值给指针
指针变量如何定义与赋值
对指针赋值
对指针进行赋值
对指针数组的赋值
相关问题
int *p=NULL; 这样给指针变量赋“空”值对吗?对的...
再给指针变量(*p)赋空值(NULL)时,*p=NULL与p...
C语言指针**p是什么意思
int a,*p=&a; 为什么是对指针赋值?
C语言中int *p=NULL是什么意思
解释下指针*p p &p的关系
c语言指针*p中p++什么意思
int *p=null 和 int *p 这两个初始化有什么...