Go Down

Topic: Immer auf 12 zählen (Read 1 time) previous topic - next topic

hanspeter99

Hi,

wieso funktionier folgendes nicht?

Code: [Select]
void loop() {
i=i++;
if (i>12) {
   (i=0);
 }
delay(1000);
}


er zählt immer:

1,2,3,4,5,6,7,8,9,10,11,12,02,12,22,32,42,52....

er soll aber immer von 1 bis 12 zählen.

Gruß

hanspeter99

Ohhhhh.....
er hat richtig gezählt, nur überschreibt er das Display nicht....

Joghurt

#2
Jan 18, 2011, 08:32 pm Last Edit: Jan 18, 2011, 08:33 pm by Joghurt Reason: 1
Tipp: Wenn Du statt nem "clear()" hinter der Zahl ein Leerzeichen ausgibst hast Du das Problem nicht, und es flackert dabei auch nicht.
;)

uwefed

Oder Du gibst bei Zahlen kleiner 10 vorher ein Leerzeichen aus und so bleibt die Einerstelle immer an der geleichen Stelle.
Grüße Uwe

MaFu

#4
Jan 19, 2011, 04:01 pm Last Edit: Jan 19, 2011, 04:02 pm by MaFu Reason: 1
Übrigens reicht anstelle von
Code: [Select]
i=i++;einfach
Code: [Select]
i++;i++ ist ja die (optimierte) Kurzform von i=i+1
_______
Manfred

Robdeflop

Hi

Nicht nur var = var++ geht, sondern auch var +=, -=.... wert, funzt einwandfrei :) Sehe das bei sehr vielen codes dass immer mit var = var + wert... verwendet wird^^

MFG, Robdeflop®

MaFu

Daran erkennt man immer sofort die Programmieranfänger. Alteingesessene C Programmierer sind in der Regel schreibfaul.
Code: [Select]
i=++i>12?0:i;
Sorry, konnt ich mir jetzt nicht verkneifen  8-)
_______
Manfred

MaFu

Wobei es ja noch kürzer geht:
Code: [Select]
i=++i%13;
_______
Manfred

Robdeflop

Hi

DANN bevorzuge ich aber eine klein wenig längere schreibweise, weil für mich alles ordentlich aussehen muss^^ Wenn ich nen längeren code habe, dann verhaspel ich mich durch solche faulheiten oft :D
(obwohl ich zugeben muss dass ich mindestens so faul wäre das so zu schreiben wie du MaFu  ::) )

Ich denk nu aber wieder Back to Topic wa?  ;D

MFG, Robdeflop®

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy