$include/de
│
Deutsch (de) │
English (en) │
$I oder $INCLUDE
Die Direktive $INCLUDE oder $I dient dem Einfügen einer Datei.
Die Direktive $INCLUDE oder $I fügt an der Stelle an der die Anweisung steht eine Datei ein.
Falls die einzufügende Datei keine Dateiendung hat, dann sucht der Compiler nach einer Datei mit der Endung .pp.
Die Anzahl der einzufügenden Dateien ist auf die Anzahl der verfügbaren file descriptors des Free Pascal Compilers beschränkt.
Beispiel:
{$INCLUDE test1.pas} // sucht im aktuellen Verzeichnis nach der Datei test1.pas
{$INCLUDE ../test2.pas} // sucht im übergeordneten Verzeichnis nach der Datei test2.pas
$I und $INCLUDE
Die Direktiven $I und $INCLUDE haben die gleiche Bedeutung.
Die Direktiven $I und $INCLUDE unterstützen die gleichen Bezeichner.
Die Direktiven kennen folgende Bezeichner:
TIME | Gibt das aktuelle Datum und die aktuelle Zeit aus. |
DATE | Fügt das aktuelle Datum ein. |
FPCTARGET | Fügt den Namen des Zielprozessors ein. Dieser Bezeichner ist deprecated (hinfällig). Der neue Bezeichner heisst FPCTARGETCPU. |
FPCTARGETCPU | Fügt den Namen des Zielprozessors ein. |
FPCTARGETOS | Fügt den Namen des Zielbetriebsystems ein. |
FPCVERSION | Fügt die aktuelle Compilerversion ein. |
FILE | Dateiname, in der die Direktive steht. |
LINE | Nummer der Zeile, in der die Direktive steht. |
CURRENTROUTINE | Name der aktuellen Routine. |
Andere Bezeichner werden aus den Umgebungsvariablen des Compiler Prozesses genommen.
Beispiel:
Program InfoDemo;
begin
WriteLn('Compilierzeit: ' + {$I %TIME%});
WriteLn('Compilierdatum: ' + {$I %DATE%});
WriteLn('Erforderliche CPU: ' + {$I %FPCTARGETCPU%});
WriteLn('Erforderliche CPU (veraltet): ' + {$I %FPCTARGET%});
WriteLn('Betriebssystem: ' + {$I %FPCTARGETOS%});
WriteLn('FPC Version: ' + {$I %FPCVERSION%});
WriteLn('Name der Datei: ' + {$I %FILE%});
WriteLn('Aktuelle Zeile als String: ' + {$I %LINE%});
WriteLn('Aktuelle Zeile als Int: ' + IntToStr({$I %LINENUM%}));
WriteLn('Compilierer: ' + {$I %USER%});
WriteLn('Home-Ordner des Benutzers: ' + {$I %HOME%});
WriteLn('Name der aktuellen Routine: ' + {$I %CURRENTROUTINE%});
end.
Hinweis: Für Infos über Lazarus, kann die Unit LCLVersion eingebunden werden.