Danke schonmal, sieht echt ziemlich gut aus, wobei ich mir nicht vorstellen kann, dass die for-Schleife so funktioniert in C
Hatte das jetzt nochmal anders versucht:
PHP Code:
void einfuegen(struct daten*anfang, struct daten*neu){
struct daten *temp = anfang;
while(laenge(temp)>0){
temp = temp->next;
}
temp->next= neu;
}
int main(void) {
struct daten anfang;
anfang.zahl = 1;
anfang.next = NULL;
struct daten *temp;
int i;
for(i = 2; i < 10; i++) {
temp = malloc(sizeof(struct daten));
temp->zahl = i;
temp->next = NULL;
einfuegen(&anfang, temp);
}
ausgabe(&anfang);
return 0;
}
Wider Erwartens läuft das so schon, obwohl ich mir das nicht so ganz erklären kann.
Ich hätte jetzt erstmal damit gerechnet, dass nur das erste eingefügt wird.
Mich wunderts, dass ich nicht für jedes Element, dass ich einfüge, einen neuen struct erstellen muss wieder.
Hatte ja einmal dieses
"struct daten *temp" aber in der While-Schleife und einfuegen methode muss ich selbst für ein neues Element, nicht wieder einen neuen struct erstellen irgendwie. Also das
"struct daten *temp" war ja einmalig.
Kann mirs nicht so ganz erklären wie das läuft ;/