Fehler: Operator "MOD" im Präprozessor
Fehler: Durch einen Fehler im Präprozessor führt die Verwendung des Operators „mod“ in Konstanten-Ausdrücken zu fehlerhaftem Ergebnis oder zum Absturz des Compilers.
- Lösung: Ersatz-Makro verwenden.
Fehler:
const rest = 12345 mod 10 ' = 5
Lösung:
Für 16 Bit Argumente
#define DEF_MOD16(a,b) as word( (a) - (b)*word((a) /(b)) ) const rest = DEF_MOD16(12345, 10) ' = 5
Für 32 Bit Argumente
#define DEF_MOD32(a,b) as long( (a) - (b)*long((a) /(b)) ) const rest = DEF_MOD32(100000, 7) ' = 5