Defined()

PräprozessorAusschließlich eine Funktion des Präprozessors

Ermittelt ob ein Symbol oder eine Konstante definiert ist. Die Präprozessorfunktionen sind für #if..#endif-Strukturen vorgesehen und ermöglichen das bedingte Kompilieren von Programmcode in Abhängigkeit vom Vorhandensein einer Konstante. Defined() ist vergleichbar mit der #ifdef-Direktive in C, jedoch hier als Funktion implementiert.

Erlaubt sind:

  • Konstanten, auch Prozessorkonstanten wie avr.TIMSK
  • Label aus dem Assembler-Quelltext
  • Bibliotheksnamen wie z.B. Graphics.interface

Syntax:

  • defined( symbol )
    Das Ergebnis ist wahr, wenn symbol definiert ist.

Siehe auch: Direktiven, Ablauf des Kompiliervorgangs

Luna

#if defined(avr.TIMSK0)
  'Programmcode
#endif
#if defined(Graphics.interface)
  'Programmcode
#endif
#if defined(mylabel)
  'Programmcode
#endif

Assembler

.if defined(avr.TIMSK0)
  'Programmcode
.endif
.if defined(Graphics.interface)
  'Programmcode
.endif
.if defined(mylabel)
  'Programmcode
.endif