Okay, ich nehme mal kurz deinen Beitrag auseinander und sage was dazu:
Ebenso hast du zwar #error verwendet, aber nirgens erklärt.
#error = Erzeugt einen error (das steht da auch grob)
ch hätte mir gewünscht, dass du noch ein paar #pragma-Sachen reingebracht hättest.
Lese meinen letzten Satz...
Auch #inlcude wäre sinnvoll.
Das Directive Included eine Include datei, mehr aber auch weniger nicht.
Du hast in der Überschrift was von pre-processor geschrieben, aber gerade darauf gehst du nicht weiter ein.
Okay, da hast du recht, ich denke ich baue das noch ein wenig aus, wie der Compiler das ganze Script verarbeitet...
sehe ich keinen Unterschied zwischen #if und if
Dann hast du nicht genau hingeschaut, du kannst #if im Gegensatz zu if egal wo im Script verwenden.
das ist doch erst das total spannende daran.
Dein Leben scheint nicht sehr aufregend zu sein, wenn du es als "so spannend" hälst, dass der Compiler die Directives vor allem anderen verarbeitet 
Naja, ich werde es evtl noch hier und da ein wenig ausbauen 
mfg. 