Forum: Compiler & IDEs Integer und Konstante im IF


von Axel Schindler (Gast)


Lesenswert?

Hallo!

Ich habe folgende if Anweisung:

Zeile 116: if(TSolar_oben>TSolar_obenMAX) {...}

TSolar_oben ist eine Integer Variable

#define TSolar_obenMAX = 60 ist also Konstante

Der Kompiler meckert aber:
main.c: In function `main':
main.c:116: error: parse error before '=' token

Warum? Wenn ich eine Zahl eintrage tuts ja auch. Ich dachte ne Konstante 
ist nix anderes?!?

Danke für Antworten.

von Oryx (Gast)


Lesenswert?

Wie kommst Du darauf, dass TSolar_obenMAX eine Konstante ist.
Es ist ein Makro!

Jetzt hast Du auch schon gleich den Nachteil von einem Makro erkannt: 
Der Kompiler kann keine guten Fehlermeldungen bringen.

Was Du willst ist:
#define TSolar_obenMAX 60

Das = Zeichen ist entfernt

Oryx

von Axel Schindler (Gast)


Lesenswert?

Oh ich PENNER !!! :o)

Danke für Deine Axt! Ich habe mal wieder den Wald vor lauter Bäumen 
nicht gesehen. Dass da kein = hinkommt ist mir eigentlich klar. Ein paar 
Zeilen weiter unten habe ich Konstanten auch richtig definiert. Aber wie 
gesagt.....

Dann mach die Fehlermeldung auch schon wieder Sinn.

Es sind meist diese Kleinigkeiten, die einen fast um den Verstand 
bringen.

Wie wenn man in nem Brief nach dem 5. Korrekturlesen immer noch simple 
Fehler hat...

DANKE!

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.