为了账号安全,请及时绑定邮箱和手机立即绑定

为什么说!p是到了末尾

为什么说!p是到了末尾

溯源1 2017-01-12 16:02:20
查看完整描述

5 回答

已采纳
?
眼前的黑不是黑zz

TA贡献57条经验 获得超42个赞

 if语句是出错判断,if语句中的!p为真就相当于p指向了NULL,即P=NULL;加上“!”!p就是真,由于是“||”,其中一个为真,就会执行下面的return ERROR,!p不是意味到了末尾,p->next==NULL,才是判断链表结束的标志。

查看完整回答
反对 回复 2017-01-13
?
更好的自己lin

TA贡献6条经验 获得超6个赞

???什么意思??

查看完整回答
1 反对 回复 2017-01-12
  • 溯源1
    溯源1
    !p有什么意义吗?
  • 溯源1
    溯源1
    看看我传上去的图片
  • 更好的自己lin
    更好的自己lin
    这个 !p 是到了末尾,我觉得 ‘眼前的黑不是黑zz’ 解释的有问题,(个人意见,不喜勿喷) 你在前面while不是写了 p = p->next; 因为解释我给你加个标志,p1,p2, p2 = p1->next, 如果p1是最后一个,那么他的next就是空,也就是说p2 为空,p2 == NULL, 这里的if判断,如果p为空,就意味着你在前面的while 循环到了最后一个节点。
?
溯源1

TA贡献7条经验 获得超0个赞

//img1.sycdn.imooc.com//58782fa70001733a04810524.jpg

这个图片好像之前发不上去


查看完整回答
反对 回复 2017-01-13
?
蒲公英wsg

TA贡献242条经验 获得超126个赞

楼主是不是没有将问题发完全?

查看完整回答
反对 回复 2017-01-13
?
laaa

TA贡献8条经验 获得超5个赞

不知道问的什么

查看完整回答
反对 回复 2017-01-12
  • 5 回答
  • 1 关注
  • 2229 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信