Hallo Leute, ich habe eine Funktion erstellt, die aus einer verknüpften Liste rekursiv löscht, je nach der Nummer, die Sie aus der verknüpften Liste löschen möchten. aber nach dem Entfernen, wenn ich versuche, die Liste seinen Stapel zu drucken und es gibt einen Laufzeitfehler, weil nach dem Entfernen gibt es einfach nichts an der Stelle der Nummer. Wie kann ich den Code vervollständigen?rekursive Nummer aus verknüpfter Liste löschen
struct node* delete_item(struct node* head, int num)
{
if (head == NULL) { // Found the tail
printf("not found\n");
return NULL;
}
else if (head->data == num)
{ // Found one to delete
head = head->next;
free(head);
printf("num founded");
return head->next;
}
else
{ // Just keep going
head->next = delete_item(head->next, num);
return head;
}
}