C语言动态创建链表,头插入法为什么不成功?

2025-05-09 15:25:01
推荐回答(1个)
回答1:

你这写的好蛋疼!【虽然想用0作为结束,那干嘛还有添加这个节点呢?】

一,怎么不对申请到的空间进行判断(申请到了木有)

二,为么不是先输入数据,再进行空间申请(若是数据输入错误,你申请的空间有么线用?)

三,head=(LNode)malloc(sizeof(LNode));p=(LNode)malloc(sizeof(LNode));你这个写的,第一个输出绝对会错。

四,针对你这个LNode create_Link_list_b(void)函数,假设第一个数据输入的是0,你这个绝对会gg。明明有一个数据为0的动态节点,你缺个人家返回为空。一个为空的指针,你在main()里面又让他指向next ,它哪来的next。


五:你想头插入,不应该是  p->next=head?  假设head 的是指向原来的链表。只要新添加节点的next 指向原来链表的 头不就可以了?你p->next=head->next是什么鬼?