Delphi-Quellcode:
while (Stapel^.next <> nil) and (Stapel^.next^.next <> nil) do
Stapel := Stapel^.next;
temp := Stapel^.next;
Stapel^.next := nil;
Dispose(temp);
Ich hoffe, ich habe keinen Denkfehler dabei gemacht.
[edit] Doch, habe ich. Bei weniger als 2 Elementen haut das so nicht hin. Aber der Ansatz müsste zumindest richtig sein. [/edit]