问题描述
- 删除链表的节点出现问题
-
我创建了一个链表,链表的第一个节点不是空白的。我想用free函数删除第一个节点,发现出错。删除其他的节点没有问题。不知道什么缘故。
解决方案
你的链表怎么定义的?
是
typeof struct Node
{
Node next;
}
Node * head这样定义的么?
那么你删除首节点要这么做
prehead = head;
head = head->next;
free(prehead);
解决方案二:
删除节点时:
Node *s,*p;
s=p->next;
p->next=s->next;
free(s):
删除头节点
s->next=head->next
free(head);
解决方案三:
链表内的节点删除
时间: 2024-12-03 22:30:25