-
so sieht das Original aus:
Code:
if (difference<-speed)difference=-speed;
if (difference>speed)difference=speed;
if (difference>0) MotorSpeed(speed-difference,speed);
else MotorSpeed(speed,speed+difference);
mit dem (++)bzw.(--)habe ich rumexperimentiert.
Gruß Frank
-
Stimmt es du arbeitest mit den code auf seite 18, kapitel 1.5.2 "Nur ein Stükchen geradeaus"?
Hmm, MotorSpeed erwartet "unsigned char", speed ist aber ein "signed int". Ein "--" operation auf speed wan es die wert 0 hat wird ein 'undefinierte' auswirkung geben. Deshalb die warnung denke ich.
-
Ein warnung ist auch nur ein warnung. Ein run-time fehler (fehler im betrieb) wird nicht unbedingt auftretten. De compiler macht dich aufmerksam auf ein potentieles problem das du besser mit weitere kontrollier-code vermeiden soll.