void addNewNode (struct node *head, int n)
{
struct node* temp = (struct node*) malloc(sizeof(struct node));
temp -> data = n;
temp -> link = head;
head = temp;
}
Der oben angegebene Code ist die populär falsche Version einer Funktion zum Hinzufügen eines neuen Knotens am Kopf einer verknüpften Liste. Im Allgemeinen sind die korrekten Versionen wie folgt,
void addNewNode (struct node **head, int n);
void addNewNode (struct node * &head, int n);
Ich habe eine andere, einfache Funktion für diesen Zweck entwickelt, die gut funktioniert.
struct node* addNewNode (struct node *head, int n)
{
struct node* temp = (struct node*) malloc(sizeof(struct node));
temp -> data = n;
temp -> link = head;
return temp;
}
Aber ich habe nicht gesehen, dass dies in Code und Tutorials verwendet oder diskutiert wird, und daher bin ich neugierig zu wissen, ob dieser Ansatz einen Fehler hat.