Also hier mal der Code eventuell seht ihr den Fehler
Delphi-Quellcode:
type
PZahl = ^TZahl;
TZahl = record
Next : PZahl;
iZahl : Integer;
dwWann : Cardinal;
end;
Var
p, // Hilfvariable, genauso wie p2
pFirst, // gibt immer die 1. Zeile an
p2 : PZahl;
procedure AddItem(iNumber : Integer; dwZeit : Cardinal);
begin
New(p); // holt Speicher
p^.iZahl := iNumber; // setzt die Zahl in den Speicher
p^.dwWann := dwZeit;
p^.Next := nil; // setzt letztes Element auf nil
if pFirst = nil then // setzt die erste Zeile, wenn noch nicht vorher gemacht
pFirst := p
else
begin
p2 := pFirst;
while (p2^.Next <> nil) do // wandert an die letzte Zeile
p2 := p2^.Next;
p2^.Next := p;
end;
end;
procedure DelWholeList;
begin
while (pFirst <> nil) do // es wird solange gelöscht, bis pFirst nil ist
begin // und das ist wenn die Liste zu ende ist
p := pFirst;
pFirst := pFirst^.Next;
Dispose(p);
end;
end;
Wo liegt da der EInvalidPointer Fehler