|
|
STUDENT * Delete_stu_list(STUDENT * head,char * sname)
{
STUDENT *q,* p;
p = head;
while(p->next)
{
q = p;
p = p->next;
if(strcmp(p->name,sname) == 0)
{
if(p == head)
head = p->next;
else
q->next = p->next;
free(p);
}
}
return head;
}
请帮我看看这段代码,我的理解是会漏掉第一个结点,事实也是这样,可是当后面的结点符合删除条件时,会抱发送错误报告的错误,就算是漏掉了第一个接点,也不应该抱这个错误啊 |
|