-
Code:
Beim ersten Durchlauf wird hier wohl vor der ersten Addition nicht auf Wahrheit überprüft und somit rutscht die erste "0" mit durch, ohne die Schleife abzubrechen.
Das klingt ja fast so, als ob du hier irgendein Fehlverhalten witterst. Dabei macht der Compiler nur, was ich ihm im Sourcecode mitgeteilt habe:
while (++count)
Beachte hierbei, dass das ++ vorne an count steht. Das bedeutet "erhöhe count erst um Eins und teste danach auf True".
Du scheinst auch zu denken, die Addition sei integraler Bestandteil der Schleife (in der Basic-For-Schleife ist sie das auch), dem ist aber nicht so. Man könnte das ganze auch etwas "ausführlicher" schreiben, dann wird der Ablauf für dich vielleicht etwas klarer:
Code:
uint8_t count = 0;
do {
// etwas tun
count = count + 1;
} while (count != 0);
-
pühh..
also noch genauer hingucken.
Vielen Dank für Deine Geduld mit mir!