linux-l: Free Pascal Compiler

Siegfried Pohl spohl at bert.in-berlin.de
Do Apr 22 15:02:44 CEST 1999


*Mario Thaten <trinity at vossnet.de> wrote:
> type tpointer=^tzeile;
>      tzeile=RECORD
>                  inhalt:string[80];
>                  next:tpointer;
>             end;
> 
> var zaktuell,zkopf:tpointer;
> 
> und ich rufe diesen später auf mit
> 
> if zkopf=NIL then zaktuell:=new(tpointer) else
                              ^^^^^^^^^^^^
> zaktuell.^next:=new(tpointer)
                  ^^^^^^^^^^^^^

Bei PASCAL mu"s man, im Gegensatz zu C als Parameter an die
Speicher allokierende Funktion nicht den Typen des Datums angeben,
f"ur den man Speicher anfordert, sondern die Instanz des Objektes
selbst, ergo wird dann auch auch das Ergebnis des Funktionsaufrufes
nicht an den Pointer zugewiesen. Du mu"st auch oben irgendwann mal,
wenn Du einen Pointer auf != NIL "uberpr"ufst, irgendwann dem Pointer
mal NIL zugewiesen haben, davor ist der Zeigerwert undefiniert
(zeigt sonstwohin). 

Ergebnis: Nutze lieber C

MfG, Siggi

--
| Siegfried Pohl <spohl at bert.in-berlin.de> 
| http://www.in-berlin.de/User/bert
| Tel: +49 3381 718056; Fax: +49 3381 718058 
| -> Real men dont use WYSIWYG editors; they use YAFIYGI editors
| -> like vi/ex (You Asked For It You Got It) 



Mehr Informationen über die Mailingliste linux-l