2010-07-10 16 views

Antwort

2

Es ist, weil # ein Indikator ist, dass es eine Präprozessoranweisung

Bedeutung, bevor es Ihren Code kompiliert, es wird die Datei stdio.h

4

enthält Da # der Standard-Präfix ist für die Einführung Präprozessoranweisungen. 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) handhabte und C-Code für den Compiler (it kann immer noch ein separates Programm sein, aber es kann heutzutage auch nur eine Phase des Compilers sein).

Das # Symbol ist nur ein nützliches Zeichen, das durch den Präprozessor und beaufschlagt, wie erkannt werden kann:

#include <stdio.h> 
#if 0 
#endif 
#pragma treat_warnings_as_errors 
#define USE_BUGGY_CODE 

und so weiter.

15

Es denotes a preprocessor directive:

Eine wichtige Sache, die Sie sich merken müssen, ist, dass der C-Präprozessor nicht Teil des C-Compiler ist.

Der C-Präprozessor verwendet eine andere Syntax. Alle Anweisungen im C-Präprozessor beginnen mit einem Nummernzeichen (#). Mit anderen Worten, das Nummernzeichen bezeichnet den Beginn einer Präprozessordirektive und es muss das erste Nicht-Leerzeichen in der Zeile sein.

# war wahrscheinlich willkürlich als ein ansonsten nicht verwendeten Zeichen in C-Syntax ausgewählt. @ hätte genauso gut funktioniert, nehme ich an.

Wenn es kein Zeichen dafür gab, 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) eigentlich vorverarbeitet werden sollte oder nicht?

4

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 Anweisungen, bevor irgendein Code durch die Anweisungen erzeugt wird.

Quelle: http://www.cplusplus.com/doc/tutorial/preprocessor/

1

# ist eine Pre-Prozessor-Direktive. Der Präprozessor verarbeitet Anweisungen für die Einfügung von Quelldateien (#include), Makrodefinitionen (#define) und bedingte Einschlüsse (#if). Wenn der Preprozessor dies feststellt, wird er die Header enthalten, 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.

0

Wir wissen, ohne Präprozessor-Programm nicht ausgeführt werden. Und Präprozessor ist # oder #include oder #define oder andere.Also # wird benötigt, bevor #include.

Verwandte Themen