Forum: PC-Programmierung code::blocks Defines


von C. W. (chefkoch)


Lesenswert?

Hallo *,

ich würde gerne per #IFDEF in Code::blocks herausfinden, ob das 
Build-target "Release" oder "Debug" ist und der jeweils nicht benutze 
Code im Editor ausgegraut wird. Hat jemand einen Tipp?

von sprintf("%s, name) (Gast)


Lesenswert?

Compiler setzten bei debug builds manchmal ein define. Z.b. __DEBUG oder 
sowas. Hilfe des Compilers fragen...

von C. W. (chefkoch)


Lesenswert?

Der Compiler ist nicht mein Problem - ich möchte schon beim Editieren 
sehen ob der Code compiliert wird oder nicht. Prinzipiell funktioniert 
das wenn ich den Define mit in den Code schreibe.

von Rainer V. (rudi994)


Lesenswert?

CodeBlocks Menu "Project\Build Options" wählen, im dann geöffneten 
Dialog links unter dem Projektnamen die Version "Debug" wählen und dann 
unter Kartenreiter "Compiler settings" und weiter unter Kartenreiter 
"#defines"  ein eigenes DEBUG-Symbol angeben (z.B. MYDEBUG, _MYDEBUG 
oder __MYDEBUG). Dialog mit Button "OK" bestätigen und schließen. Danach 
im Quellcode das eigene DEBUG-Symbol verwenden.

Ebenso kann für die Release-Version ein RELEASE-Symbol angegeben werden, 
gleicher Vorgang wie oben, im Dialog links "Release" auswählen.

Ob auch CodeBlocks selbst ein DEBUG-Symbol generiert, ist mir nicht 
bekannt. Habe dazu keine Infos gefunden und scheinbar muß das der 
Benutzer für jedes Projekt selber erledigen.

PS: Syntax-Highlighting für #if und #ifdef
Menu Settings\Editor\General Settings, Kartenreiter C/C++ Editor 
Settings. Farben einstellen im Menu Settings\Editor\Syntax Highlighting 
unter der Option "Preprocessor" bzw. "Preprocessor (inactive)"

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.