Forum: Mikrocontroller und Digitale Elektronik Frage zu while


von Wolfgang (Gast)


Lesenswert?

die Schleife

int var =1;
while (var <1)
var=var +1;

bedeutet m. W., dass die Schleife solange durchlaufen wird, bis die
Bedingung (var <10) unwahr wird.
Was bedeutet aber while(1)? --> Endlosschleife
Gibt es auch while(0)?

Wolfgang

von AVR-User (Gast)


Lesenswert?

>Was bedeutet aber while(1)? --> Endlosschleife
korrekt

>Gibt es auch while(0)?
Ja macht aber keinen Sinn. Übrigens ist alles != 0 -> wahr.

von Thomas B. (yahp) Benutzerseite


Lesenswert?

> int var =1;
> while (var <1)
> var=var +1;
>
> bedeutet m. W., dass die Schleife solange durchlaufen wird, bis die
> Bedingung (var <10) unwahr wird.
> Was bedeutet aber while(1)? --> Endlosschleife
> Gibt es auch while(0)?

Eine while-Schleife wird solange durchlaufen, wie die Bedingung WAHR 
ist. Die Prüfung erfolgt vor dem Ausführen des Schleifenkörpers. While 
(0) wird also nie ausgeführt *. While (1) ist eine Endlosschleife. 
Obiger Fall kommt also nicht zur Ausführung.


*) Gilt für Sprachen, in den Integers als Boolsche Größen fungieren 
können.

von Wolfgang (Gast)


Lesenswert?

<while (1) ist eine Endlosschleife.
Diese Antwort hatte ich vorwegnehmen wollen.
ich wollte gern wissen, was die Bedingung (1) in Worten bedeutet

Wolfgang

von crazy horse (Gast)


Lesenswert?

1 heist eben nicht null und damit wahr. Du könntest auch schreiben
while (123) oder
while (234567)
so ungefähr alles, aber nicht 0.

von Wolfgang (Gast)


Lesenswert?

aha, (0) steht für unwahr, (1) (oder 123 ...) steht für wahr
man nimmt sozusagen die Bedingung schon vorweg. richtig?
Wolfgang

von Jemand (Gast)


Lesenswert?

Sehr richtig. Noch ein Beispiel für Bedingungen:

int i = 1;
bool a = (i > 10);
bool b = (i < 10);

while(a){};  // niemals durchlaufen
while(b){};  // Endlosschleife

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
Noch kein Account? Hier anmelden.