Entwickler-Ecke

Sonstiges (Delphi) - Erklärung zu Programmtext


joker36 - Di 26.05.09 15:08
Titel: Erklärung zu Programmtext
Diesen Programmtext haben wir mal im Unterricht geschrieben und nu hab ich Morgen meine mündl. Abi Prüfung machen und kann leider nichtmehr viel hiermit anfangen, könnte mir jemand von euch erklären was diese bzw wie diese Procedure etwas macht?
Insbesonders mit den Zeigern und den vielen "gleichen" variablen komm ich nicht klar.

Danke schonmal


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
String20 = string[20];
    tperson = ^personentyp;
    personentyp = record
        name: string20;
        next : tperson;
    End;

var
  Form1: TForm1;
  kopf : tperson;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var lauf, person :tperson;

begin
new(person);
person^.name := edit1.text;
person^.next := NIL;
if (kopf = NILthen kopf := person
   Else begin
   Lauf := kopf;
   While Not (lauf^.next = nil)
   do lauf := lauf^.next;
   lauf^.next:= person;
   end;
end;


jaenicke - Di 26.05.09 15:11

Es wird ein neuer Record im Speicher erstellt und an den bestehenden Pointer angehängt oder der Record in den kopf gelegt, wenn da noch keiner ist (die kette also leer ist).


Delete - Di 26.05.09 15:13

Es handelt sich hier um eine einfach verkettete Liste. Details dazu kannst Du hier [http://moonraven.kilu.de/index.php?view=article&catid=6%3Adelphi-tutorials&id=7%3Azeiger-und-zeigerketten&option=com_content&Itemid=12] nachlesen.