Diskussion:Endlosschleife: Unterschied zwischen den Versionen
(Schwer zu erklären zu einem Laien, als Programmierer) |
(Hinzugefügt den Vorteil) |
||
Zeile 20: | Zeile 20: | ||
In den {} würden dann noch Anweisungen stehen. | In den {} würden dann noch Anweisungen stehen. | ||
+ | |||
+ | |||
+ | |||
+ | Aber Endlos Schleifen haben auch ihre Vorteile: | ||
+ | |||
+ | Prozesse die Hintergrund laufen, die ganze Zeit solange das Programm läuft. Es gibt Möglichkeiten auch innerhalb der Endlosschleife die Schleife über Bedingungen abzubrechen. | ||
+ | |||
+ | Beispiel: | ||
+ | |||
+ | for(i=1;i>0;i++){ | ||
+ | Ausgabe: Möchten Sie die Endlosschleife fortsetzen? | ||
+ | Einlesen der Eingabe | ||
+ | Ist die Eingabe=Ja | ||
+ | { | ||
+ | Dann beende die Endlosschleife und arbeite weiter hinter der Schleife | ||
+ | } | ||
+ | } | ||
+ | weitere Anweisungen |
Version vom 8. Mai 2006, 15:15 Uhr
Endlosschleifen könen verheerend Auswirkungen in Programmen haben. Es kann soweit gehen das PC irgendwann abstürzt.
Ein Beispiel:
Ein kleiner Codeschnipsel um es zu verdeutlichen: (so alleine nicht ausführbar)
int i; //Variable i wird deklariert und wird auf den Wert 0 gesetzt
for(i=1;i>0;i++){} //Die Schleife
Es passiert folgendes was für Laien nur schwer zu begreifen ist: i ist so was wie ein Container in dem die Zahl gespeichert wird.
Mit dem Befehl: int i; wird dieser Art von Container definiert. Wobei durch int ihm gesagt wird es ist eine ganze Zahl.(weiter hol ich dazu nicht aus, das würde den Rahmen sprengen)
for(int i=1 wird dem Container die Zahl 1 zugewiesen. i>0 bedeutet: Im Container muss eine Zahl größer 0 drin sein das die Schleife weiter ausgeführt wird.
i++ bedeutet zu allerletzt noch die Zahl wird immer nach einem durchlauf um eins erhöht.
In den {} würden dann noch Anweisungen stehen.
Aber Endlos Schleifen haben auch ihre Vorteile:
Prozesse die Hintergrund laufen, die ganze Zeit solange das Programm läuft. Es gibt Möglichkeiten auch innerhalb der Endlosschleife die Schleife über Bedingungen abzubrechen.
Beispiel:
for(i=1;i>0;i++){ Ausgabe: Möchten Sie die Endlosschleife fortsetzen? Einlesen der Eingabe Ist die Eingabe=Ja
{ Dann beende die Endlosschleife und arbeite weiter hinter der Schleife }
} weitere Anweisungen