标题:怎么理解:语句p=NULL;执行后,指针p并不是指向地址为0的存储单元
只看楼主
H_M
Rank: 2
等 级:论坛游民
威 望:1
帖 子:23
专家分:60
注 册:2019-2-7
结帖率:66.67%
已结贴  问题点数:2 回复次数:5 
怎么理解:语句p=NULL;执行后,指针p并不是指向地址为0的存储单元
书上说:
int *p=NULL,表示p指向地址为0的单元。
这书上的话怎么和  “语句p=NULL;执行后,指针p并不是指向地址为0的存储单元”  不同啊,,,求解了了了了了了了
搜索更多相关主题的帖子: NULL 指针 指向 地址 单元 
2019-03-02 16:38
lxk1732942
Rank: 6Rank: 6
等 级:侠之大者
威 望:7
帖 子:450
专家分:425
注 册:2018-9-4
得分:1 
int *p = NULL;
等价于
int *p;
p = NULL;

所以这个句子的意思是,定义一个指向整型数据的指针p,并为其开拓空间存放p的值,再将p的值初始化为NULL。
2019-03-03 12:07
lxk1732942
Rank: 6Rank: 6
等 级:侠之大者
威 望:7
帖 子:450
专家分:425
注 册:2018-9-4
得分:0 
所以我认为书上的叙述是正确的
2019-03-03 12:08
李少iii
Rank: 4
来 自:KUNMING
等 级:业余侠客
威 望:2
帖 子:67
专家分:245
注 册:2018-10-4
得分:1 
NULL代表空指针,那就代表指针p并没有指向有限地址嘛!

我不曾拥有梦想,但我坚信我有未来……
2019-03-03 15:35
waterstar
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:5
帖 子:984
专家分:2810
注 册:2010-2-12
得分:1 
首先,你设置成NULL空之后,确实p就指向了0x00000000的地址,但是,这个地址属于系统保护的地址,你不能用,所以会报错。
在编程上,我们习惯是把这种0x00000000的地址当成是非法地址,用来判断指针的合法性。

冰冻三尺,非一日之寒;士别三日,不足刮目相看!
2019-03-04 16:17
Mr_doge
Rank: 5Rank: 5
等 级:贵宾
威 望:10
帖 子:159
专家分:385
注 册:2018-6-28
得分:1 
你准备了一个桶,准备用来装水,但是你暂时没有装任何东西进去,只是清理干净放着备用
此时,你老爹让你把里面的水喝了,你肯定会看了看桶又看着你老爹一脸黑人问号
这就是 int *p=NULL;
2019-03-08 21:13



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-493336-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.321009 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved