Ich habe folgendes Problem: GCC-Compiler mit Mega32
1 | char varA; |
2 | int varB; |
3 | |
4 | ...
|
5 | |
6 | varA = -10; |
7 | |
8 | if(varA < 0)varB = 1; |
Leider erkennt der Compiler "<0" nicht - warum? Damit gehts gleich weiter:
1 | varA = -10; |
2 | varB = 100; |
3 | |
4 | varB = varB + varA; |
Das Ergebnis lautet 346 in varB. Es ist so, als ob er die char Variable stur nach den Bits und nicht nach dem Wert beurteilt. Was mache ich falsch? Muss ich noch eine entsprechende Bibliothek einbinden?