Hallo ich habe ein Verständnissproblem bei folgendem C-Code: . . . for(;;) . . Was haben die ; in der Klammer zu bedeuten? Weiß das jemand? Besten Dank Thomas
:
Verschoben durch Moderator
Ist so definiert als Endlos-Schleife ohne Abbruchbedingung. Ich persönlich halt es für syntaktischen Schwachsinn und bevorzuge while(1) { //Endlosschleife } Aber ist letztendlich reine Gschmacksache...
Thomas E. schrieb: > for(;;) > . > . > Was haben die ; in der Klammer zu bedeuten? Weiß das jemand? Sie trennen die (Startzuweisung;Schleifenabbruchbedingung;Schleifenoperation) ( i=0 ; i<9 ; i++ ) Wenn alle drei Argumente fehlen: ( ; ; ) dann fehlt auch die Schleifenabbruchbedingung und die Schleife läuft ohne explizites break einfach immer durch.
Guten Tag, ich habe ein Problem bei der Endlosschleife die ich programmiert habe. Ich soll eine Schleife entwickeln, bei der endlos Zahlen eingegeben werden und bei negativen zahlen die Schleife verlassen wird und das Programm beendet wird. Ich hab schon mit for , while versucht und bin bei do-while gelandet. eine einfache while(i>0) taugt nichts und if lese break Anweisungen bringt die Schoeife auch nicht sich zu beenden. Muss man mehrere Schleifen programmieren und müssen die verschachtelt sein? ich bitte um Hilfe
Julian Lindemeyer schrieb: > ich habe ein Problem bei der Endlosschleife die ich programmiert habe. Bitte das nächste Mal einen neuen Thread starten und nicht eine über 8 Jahre alte Leiche ausgraben. Julian Lindemeyer schrieb: > Ich soll eine Schleife entwickeln, bei der endlos Zahlen eingegeben > werden und bei negativen zahlen die Schleife verlassen wird und das > Programm beendet wird. Dann ist es nicht endlos. > Ich hab schon mit for , while versucht und bin bei do-while gelandet. > eine einfache while(i>0) taugt nichts Warum nicht? > und if lese break Anweisungen bringt die Schoeife auch nicht sich zu > beenden. Auch hier: Warum nicht? Sollte beides gehen. > Muss man mehrere Schleifen programmieren und müssen die verschachtelt > sein? Nein.
:
Bearbeitet durch User
Die Unterschiede sind recht einfach... do{}while(Bedingung) prüft die bedingen am ende. while(Bedingung){} und for(initial Anweisung;Bedingung; wenn wahr Anweisung){} vor dem Durchlauf. Verlassen wird die schleife mit break oder die Bedingung ist nicht wahr.. continue springt direkt zur Bedingung, heißt nach continue wird der restliche Code in der schleife nicht ausgeführt und zunächst die Bedingung geprüft.
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.