Hi,
ich programmiere mit WinAVR.
Ich frage mich, ob beim Rechnen mit einer Variable, die zwischendurch
beim Rechnen über ihre Grenzen überläuft ein Fehler entsteht oder ob nur
das Ergebnis zählt:
Bsp:
1 | unsigned char test = 250;
|
2 | test = (test+20)/9;
|
Das Ergebnis ist 30. Aber durch die Berechnung test+20 ist der Wert
zwischenzeitlich 270 und das ist ja mehr als ein char "fassen" kann.
Daher meine Frage, reicht es, wenn man dafür sorge trägt, dass das
Endergebnis im Bereich des Datentyps ist oder muss man sich auch um
Überläufe von Zwischenergebnissen Gedanken machen?