Defined

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu Bedingte Compilierung (Übersicht) - Index

Syntax



 #if defined[(] <bezeichner> [)]
 #elif defined[(] <bezeichner> [)]



Beschreibung

Mit dem Operator defined lässt sich testen, ob bereits zuvor ein Bezeichner mit #define definiert war. Der Operator defined darf nur in #if- und #elif- Konstrukten verwendet werden.

Wenn <bezeichner> zuvor definiert und diese Definition nicht zwischenzeitlich per #undef wieder gelöscht wurde, so ergibt defined den Wert 1 (True), andernfalls 0 (False).

defined hat dieselbe Funktion wie #ifdef.



 #if defined(mein_symbol)



ist gleichwertig mit



 #ifdef meinsymbol



Der Vorteil von defined liegt darin, dass man dieses Schlüsselwort innerhalb eines komplexen Ausdrucks hinter der Direktive #if mehrfach einsetzen kann. Beispiel dafür:



 #if defined(mein_symbol) && !defined(dein_symbol)



Siehe auch