Als «preprocessor» getaggte Fragen

Ein Programm, das Eingabedaten verarbeitet, um eine Ausgabe zu erzeugen, die als Eingabe für ein anderes Programm verwendet wird. Verwenden Sie dieses Tag für Fragen zu einem nicht angegebenen Vorprozessor. Wenn es ein bestimmtes Tag für den Vorprozessor gibt, sollten Sie dieses verwenden. Erwägen Sie die Verwendung von [Tag: C-Präprozessor], [Tag: Boost-Präprozessor], [Tag: Orakel-Pro-C], [Tag: CSS-Präprozessor], [Tag: Karma-Babel-Präprozessor], [Tag: M4 ]]

300
MIN und MAX in C.

Wo sind MINund MAXin C definiert, wenn überhaupt? Was ist der beste Weg, um diese so allgemein und sicher wie möglich zu implementieren? (Compiler-Erweiterungen / Builtins für Mainstream-Compiler werden

248
GCC-Dump-Präprozessor definiert

На этот вопрос есть ответы на Stapelüberlauf на русском : Как узнать список всех определённых макросов? Gibt es eine Möglichkeit für gcc / g ++, seine Präprozessordefinitionen über die Befehlszeile zu sichern? Ich meine Dinge wie __GNUC__, __STDC__und so...

233
# Pragma Pack Effekt

Ich habe mich gefragt, ob mir jemand erklären könnte, was die #pragma packPräprozessor-Anweisung bewirkt und was noch wichtiger ist, warum man sie verwenden möchte. Ich habe mir die MSDN-Seite angesehen , die einige Einblicke bot, aber ich hatte gehofft, mehr von erfahrenen Leuten zu hören. Ich...

209
# Makro für Debug-Druck in C definieren?

Der Versuch, ein Makro zu erstellen, das zum Drucken von Debug-Meldungen verwendet werden kann, wenn DEBUG definiert ist, wie der folgende Pseudocode: #define DEBUG 1 #define debug_print(args ...) if (DEBUG) fprintf(stderr, args) Wie wird dies mit einem Makro

183
Überladen des Makros für die Anzahl der Argumente

Ich habe zwei Makros FOO2und FOO3: #define FOO2(x,y) ... #define FOO3(x,y,z) ... Ich möchte ein neues Makro FOOwie folgt definieren: #define FOO(x,y) FOO2(x,y) #define FOO(x,y,z) FOO3(x,y,z) Dies funktioniert jedoch nicht, da Makros die Anzahl der Argumente nicht überladen. Ohne Modifikation...