Und was ist da deiner Meinung nach anders?
(ich hab den Code schon vor meinem letzten Post gesehen)
Egal ob PreviousElement() = 0 ist oder nicht, es ist trotzdem ein
Element aktiv. (im Falle von 0 halt das Erste)
Somit hat deine zusätzliche If-Abfrage keinen Wert.
In meinem Beispiel mache ich folgendes:
1. Element erstellen
2. Element erstellen
Pointer des 2. Elements speichern
gehe 1 Element zurück (1. Element aktiv)
gehe 1 Element zurück (existiert nicht, weiterhin 1. Element aktiv)
gespeicherten Pointer in das Strukturfeld des aktiven Elements schreiben
springe zum Element des gespeicherten Pointers (2. Element aktiv)
3. Element erstellen
4. Element erstellen
Pointer des 4. Elements speichern
gehe 1 Element zurück (3. Element aktiv)
gehe 1 Element zurück (2. Element aktiv)
gespeicheten Pointer in das Strukturfeld des aktiven Elements schreiben
springe zum Element des gepsiecherten Pointers (4. Element aktiv)
Wo ist da nun der Wald den ich nicht sehe?
MFG PMV