Also das was Du brauchst ist eine Liste
Code:
type
PListe : ^TListe;
TListe = record
wert : integer // beliebige Variablen;
next : PListe; // zeigt auf das nächste Element
var Anker,help:PListe; // Anker speichert das ERSTE Element und wird NIE verändert; help durchläuft die Liste
Im OnCreate musst Du nun noch die Zeiger initialisieren
Code:
new(Anker);// Reserviert Speicher für die Variable
An irgendeiner Stelle musst Du die Werte einlesen; Das geht so:
Code:
help:=anker; // Setzt die Hilfsvariable auf die Erste Stelle
repeat
new(help.next); // Erzeugt eine neue Variable und speichert den Zeiger dieser Variable in help.next ab
help:=help.next; // Jetzt rutscht man mit help in der Liste eins hoch
help.wert:=2 // Hier kannst Du Daten ändern
Help.next:=nil; // und setzt den neuen Nachfolger, der ja noch nicht erzeugt wurde auf 0
until fertig...
und mit der Struktur kannst Du dann ganz locker eins hoch rutschen indem du
benutzt...
Am Ende des Programms musst Du den Speicher noch freigeben
indem Du diese Procedure mit clearanker(Anker) aufrufst
Code:
procedure clearanker(help: PListe);
begin
if help.next<>nil then clearanker(help.next);
dispose(help);
end;
Ich hoffe das löst dein Problem...