Gast
#4545609
Tagchen Ist es nicht das gleiche zu schreiben: entweder
1 | |
oder
1 | |
oder was bedeutet der Unterschied?
|
Anzeige
|
Unterschied while ( myVar & 1 = 0 ) und while ( myVar = 0 )
Gast
#4545609
Tagchen Ist es nicht das gleiche zu schreiben: entweder
oder
oder was bedeutet der Unterschied? Nein. Das erste compiliert nichtmal und das zweite setzt myVar auf 0 und macht dann ohne die Schleife einmal zu durchlaufen weiter. Vermutlich wolltest du folgendes?
Hier testet die erste Variante nur das niedrigste Bit von myVar auf 0 und die zweite Variante den ganzen Wert.
Gast
#4545637
Sebastian V. schrieb: > Nein. Das erste compiliert nichtmal und das zweite setzt myVar auf > 0 und > macht dann ohne die Schleife einmal zu durchlaufen weiter. Vermutlich > wolltest du folgendes? > while((myVar & 1) == 0) // Klammern sind wichtig da == höhere Priorität > als & hat > > while(myVar == 0)Hier testet die erste Variante nur das niedrigste Bit > von myVar auf 0 > und die zweite Variante den ganzen Wert. Ah, vielen Dank! Jetzt ist es klar. ps, ja, meinte bei beiden '==', danke für das Weiterdenken und die Erklärung.
Gast
#4545877
searched schrieb: > while ( myVar & 1 = 0 ) myVar & 1 bedeutet hier, dass du hier die Bitmaske vergleichen tust. Z.B. myVar=7; ==> 0b111 & 0b1 ergibt 0b1 und sagst du 1=0. D.H. while(0); mfg Antwort schreibenBitte melde dich an, um einen Beitrag zu schreiben. |
Anzeige
|