罗辑拯救世界 2020-03-04 11:38 采纳率: 0%
浏览 1319
已结题

如图,为什么单链表初始化需要二级指针,而单链表的插入操作不用二级指针?

如图图片说明,创建单链表时形参head设计成二级指针类型,是因为要改变头指针指向(对吗?)。

而单链表的插入操作同样需要改变指针指向,为什么不需要用二级指针?图片说明

是因为不需要改变头指针指向所以不用传址吗?

下面这个问题就显示了我的彻底混乱:那为什么插入操作函数里面的指针P改变了指向却不用定义为二级指针类型(这么说对吗)?图片说明

本来在链表之前我还是会用指针的,一到链表,还加了个二级指针,我就懵了。问题也很混乱,希望有大佬能指导一下。

  • 写回答

4条回答 默认 最新

  • threenewbee 2020-03-04 11:59
    关注

    因为初始化的时候,需要改变这个指针的指向
    SLNode * list = NULL; //指向 NULL
    ListIntiate(list);
    //此时list指向有效内存了

    而插入并不改变指向

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月5日

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料