Difference between revisions of "$include/de"
(remove unnecessary preamble, fix some page errors) |
PascalDragon (talk | contribs) (Schalter -> Bezeichner) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 16: | Line 16: | ||
== $I und $INCLUDE == | == $I und $INCLUDE == | ||
Die Direktiven $I und $INCLUDE haben die gleiche Bedeutung.<br> | Die Direktiven $I und $INCLUDE haben die gleiche Bedeutung.<br> | ||
− | Die Direktiven $I und $INCLUDE | + | Die Direktiven $I und $INCLUDE unterstützen die gleichen Bezeichner.<br> |
<br> | <br> | ||
− | Die Direktiven kennen folgende | + | Die Direktiven kennen folgende Bezeichner:<br> |
<table> | <table> | ||
<tr> | <tr> | ||
Line 27: | Line 27: | ||
</tr> | </tr> | ||
<tr> | <tr> | ||
− | <td>FPCTARGET</td><td>Fügt den Namen des Zielprozessors ein. Dieser | + | <td>FPCTARGET</td><td>Fügt den Namen des Zielprozessors ein. Dieser Bezeichner ist deprecated (hinfällig). Der neue Bezeichner heisst FPCTARGETCPU.</td> |
</tr> | </tr> | ||
<tr> | <tr> | ||
Line 43: | Line 43: | ||
<tr> | <tr> | ||
<td>LINE</td><td>Nummer der Zeile, in der die Direktive steht.</td> | <td>LINE</td><td>Nummer der Zeile, in der die Direktive steht.</td> | ||
− | |||
− | |||
− | |||
</tr> | </tr> | ||
<tr> | <tr> | ||
Line 51: | Line 48: | ||
</tr> | </tr> | ||
</table> | </table> | ||
+ | Andere Bezeichner werden aus den Umgebungsvariablen des Compiler Prozesses genommen. | ||
<br> | <br> | ||
Beispiel: | Beispiel: | ||
Line 66: | Line 64: | ||
WriteLn('Aktuelle Zeile als Int: ' + IntToStr({$I %LINENUM%})); | WriteLn('Aktuelle Zeile als Int: ' + IntToStr({$I %LINENUM%})); | ||
WriteLn('Compilierer: ' + {$I %USER%}); | WriteLn('Compilierer: ' + {$I %USER%}); | ||
+ | WriteLn('Home-Ordner des Benutzers: ' + {$I %HOME%}); | ||
WriteLn('Name der aktuellen Routine: ' + {$I %CURRENTROUTINE%}); | WriteLn('Name der aktuellen Routine: ' + {$I %CURRENTROUTINE%}); | ||
end. | end. |
Latest revision as of 15:18, 9 April 2022
│
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.