Es bezeichnet eine Präprozessordirektive :
Eine wichtige Sache, an die Sie denken müssen, ist, dass der C-Präprozessor nicht Teil des C-Compilers ist.
Der C-Präprozessor verwendet eine andere Syntax. Alle Anweisungen im C-Präprozessor beginnen mit einem Nummernzeichen (#). Mit anderen Worten, das Rautenzeichen bezeichnet den Beginn einer Präprozessordirektive und es muss das erste Nicht-Leerzeichen in der Zeile sein.
#
wurde wahrscheinlich willkürlich als ein sonst nicht verwendetes Zeichen in C-Syntax ausgewählt. @
hätte genauso gut funktioniert, nehme ich an.
Wenn es kein Zeichen dafür gibt, dann würde es wahrscheinlich Schwierigkeiten geben, zwischen dem für den Präprozessor bestimmten Code zu unterscheiden - wie würden Sie sagen, ob if (FOO)
beabsichtigt war, vorverarbeitet zu werden oder nicht?
Weil #
das Standardpräfix für Präprozessoranweisungen ist.
In frühen C-Compilern war der Vorprozessor ein separates Programm, das alle Präprozessoranweisungen (ähnlich wie frühe C ++ "Compiler" wie cfront-generierten C-Code) behandelte und C-Code für den Compiler generierte immer noch ein separates Programm, aber es kann auch nur eine Phase des Compilers sein).
Das Symbol% co_de% ist nur ein nützliches Zeichen, das vom Präprozessor erkannt und bearbeitet werden kann, wie zum Beispiel:
%Vor%und so weiter.
Präprozessordirektiven sind Zeilen, die im Code unserer Programme enthalten sind und keine Programmanweisungen, sondern Anweisungen für den Präprozessor sind. Diesen Zeilen wird immer ein Rautenzeichen (#) vorangestellt. Der Präprozessor wird ausgeführt, bevor die eigentliche Kompilierung des Codes beginnt, daher verdaut der Präprozessor alle diese Direktiven, bevor irgendein Code durch die Anweisungen erzeugt wird.
Quelle: Ссылка
Das liegt daran, dass # ein Indikator dafür ist, dass es sich um eine Präprozessor-Anweisung handelt.
bedeutet, bevor es Ihren Code kompiliert, wird es die Datei stdio.h enthalten
#
ist eine Vorverarbeitungsrichtlinie. Der Präprozessor behandelt Direktiven für die Einfügung von Quelldateien ( #include
), Makrodefinitionen ( #define
) und bedingte Einschlüsse ( #if
).
Wenn der Vorprozessor dies feststellt, wird er die Header einschließen, die Makros erweitern und zur Kompilierung übergehen. Es kann für andere Zwecke verwendet werden, z. B. das Beenden der Kompilierung mit der #error-Direktive. Dies wird bedingte Kompilierung genannt.
Tags und Links c c-preprocessor