Forum: Compiler & IDEs Macro rechen Problem


von Marcel (Gast)


Lesenswert?

Hallo zusammen,

ich habe mal wieder ein kleinen Macro Problem und zwar wenn
folgendes Macro defininiere bekomme ich immer eine warning:

#define CALC()   ((1/32768)*256)
warning: division by zero

nehme ich aber das Ergebnis (0.0078125) direkt ohne Macro und arbeite
damit weiter geht es ohne Probleme. Da die Werte aber variable sind
würde ich das gerne im Macro berechnen und das ohne Warning.

von Wolfram (Gast)


Lesenswert?

C Rechnet aber bei sowas mit int
wenn du mit float im Makrorechnen, willst dann sag es dem Compiler
define x 32000UL
sagt beispielsweise du willst mit unsigned long rechen

von Patrick D. (oldbug) Benutzerseite


Lesenswert?

1
#define CALC()   ((1.0/32768.0)*256.0)

Das sollte funktionieren...

von -daniel- (Gast)


Lesenswert?

warum () am Ende?

du willst doch kein Parameter übergeben
mache einfach
1
#define CALC   ((1.0/3555)*256)

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.