CCK1124 2021-10-07 15:01 采纳率: 0%
浏览 58

if语句指针作为判断条件

创建一个单列表按值查找,要是列表没有该值,找不到,为什么这个代码就不行了?

img


而这个代码就可以

img

  • 写回答

2条回答 默认 最新

  • 关注

    如果从头到尾都找不到e,最后p会指向null,此时如果访问p->name,会因为访问了null的成员而报错,所以直接用图1的写法会报错
    图二的写法是在while结束后判断while是因为哪个条件结束的,如果p!=NULL,说明前一个while不是因为扫描所有节点,而是因为p->name==e这一条件而结束,此时输出即可
    如果p==NULL,说明列表中所有节点都被扫描并且没有找到e,此时进行没找到e相关的输出
    有帮助望采纳~

    评论

报告相同问题?

问题事件

  • 创建了问题 10月7日