struct node {
struct node *next;
int data;
} *head;
将元素插入到链接列表后,我使用此删除功能删除链接列表的元素,但程序卡住了。我不知道我在哪里犯错。请帮帮我。元素没有在链接列表中删除
void delete(int num1) {
struct node *del ,*prev_node;
del = head;
if(del == NULL) {
printf("\n The list is empty,cant delete element");
} else {
while(del != NULL) {
if(del->data == num1) {
if(del == head) {
head = del->next;
free(del);
} else {
prev_node->next = del->next;
free(del);
}
} else {
prev_node = del;
del = del->next;
}
}
}
}
你能告诉我们是什么问题。我无法找到一个实施。我还想补充一点,那就是在释放他们之后让自己的指点成为好习惯。 –
不能直接看到它。请发布完整的程序,以便我们编译并运行它。 –
每个节点都没有重复值? – BLUEPIXY