Heim >Backend-Entwicklung >C++ >Werden undefinierte Konstanten in #if-Bedingungen als 0 ausgewertet?
Undefinierte Konstanten und #if-Bedingungen
Bei der Verwendung des C- oder C-Präprozessors ist es wichtig, das Verhalten undefinierter Konstanten in #if zu verstehen Bedingungen.
Frage:
Kann Muss man sich darauf verlassen, dass undefinierte Konstanten für die Auswertung in #if-Bedingungen den Wert 0 haben?
Antwort:
Ja, für diesen Zweck kann man sich auf undefinierte Konstanten verlassen.
Erklärung:
Laut der C99-Standard (§6.10.1 ¶3) und ähnlich im C-Standard (§16.1 ¶4):
Daher kann man mit Sicherheit davon ausgehen, dass undefinierte Konstanten in 0 ausgewertet werden #if-Bedingungen, die ein konsistentes Präprozessorverhalten gewährleisten.
Hinweis:
In C haben die Schlüsselwörter true und false während der Vorverarbeitung besondere Bedeutungen und werden nicht durch 0 ersetzt.
Das obige ist der detaillierte Inhalt vonWerden undefinierte Konstanten in #if-Bedingungen als 0 ausgewertet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!