Moin Sorry wenn das jetzt zu trivial ist, aber ich komme nicht auch die Lösung. Ich habe hier eine do while Schleife die so aussieht: do { _delay_ms(10); adcval = ReadChannel(0); } while ((adcval>48) and (adcval<52)); Die Schleife soll solange wiederholt werden , solange adcval zwischen 49 und 51 liegt. Bereits beim compilieren bekomme ich aber einen Fehler: expected ) befor end aber auch andere "Versionen" sorgen für eine Fehlermeldung: while (adcval>48 and adcval<52); while (adcval>48) and (adcval<52); adcval ist vom Typ: uint16_t Was mache ich nur wieder falsch Gruß Michael
> Was mache ich nur wieder falsch
. du tippst Fehlermeldungen ab, statt sie zu kopieren
. du kannst kein C ;-)
&& heißt das Ding...
Ausserdem: "Zwischen" heisst: while ((adcval>49) && (adcval<51)); "Zwischen einschliesslich" heisst: while ((adcval>=49) && (adcval<=51)); Ja, letzteres hat den gleichen Effekt wie deins - aber der Code entspricht viel mehr dem Gedanken. Das ist wie bis 10 zaehlen, das kann ich mit for( int Wert = 1; Wert != 11; Wert++); oder mit for( int Wert = 1; Wert <= 10; Wert++); erreichen. Das sind nur kleine Unterschiede, aber auch Details verbessern die Lesbarkeit.
>Danke, ich denke noch zu sehr in Delphi :)
Vieleicht tuts auch ein
#define and &&
Aber ich glaub ich mach mich lieber mal vom Acker ;)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.