Zitat von
Macci:
Würde statt
Delphi-Quellcode:
FUNCTION pop(VAR zkopf:tzeiger):char;
VAR zhilf1,zhilf2:tzeiger;
z:char;
BEGIN
zhilf1:=zkopf;
zhilf2:=zkopf^.next;
WHILE NOT(zhilf2^.next = NIL) DO
BEGIN
zhilf1:=zhilf2;
zhilf2:=zhilf2^.next;
END;
zhilf1^.next:=NIL;
pop:=zhilf2^.inhalt;
END;
nicht einfach nur
Delphi-Quellcode:
FUNCTION pop(VAR zkopf:tzeiger):char;
BEGIN
result:=zkopf^.inhalt;
zkopf := zkopf^.next
END;
genügen?
nein, würde ich jetzt nicht sagen...
denn, wenn zkopf das erste element ist und pop jeweils das letzte entfernen und freigeben soll muss ich ja solange in der liste weitergehen, bis ein element auf nil zeigt, oder?
bei mir hängts im moment an der letzten zeile der pop prozedur
Delphi-Quellcode:
FUNCTION pop(VAR zkopf:tzeiger):char;
VAR zhilf1,zhilf2:tzeiger;
BEGIN
zhilf1:=zkopf;
zhilf2:=zkopf^.next;
WHILE (zhilf2 <> nil) AND (zhilf2^.next <> NIL) DO
BEGIN
zhilf1:=zhilf2;
zhilf2:=zhilf2^.next;
END;
zhilf1^.next:=NIL;
pop:=zhilf2^.inhalt;
END;
es kommt wieder jedesmal ein exeption fehler