Nieskończona pętla
Część sekcji Podstawy ścieżki C# w Coddy. Lekcja 47 z 69.
Pętla nieskończona to pętla, która nigdy się nie kończy, ponieważ jej warunek zawsze ma wartość true. Takie pętle mogą występować w przypadku dowolnego rodzaju pętli (for, while, do-while), ale najczęściej są związane z pętlami while i do-while, ponieważ ich warunki są określone wprost.
Oto przykład nieskończonej pętli while:
while (true) {
Console.WriteLine("This will print forever!");
}W tym przypadku warunkiem jest po prostu true, które zawsze ma wartość true. Dlatego pętla będzie działać bez końca, wypisując w kółko tę wiadomość.
Innym sposobem na utworzenie nieskończonej pętli jest pominięcie warunku w pętli for:
for (;;) {
Console.WriteLine("This also prints forever!");
}Tutaj pominięto wszystkie części pętli for: inicjalizację, warunek i aktualizację. Tworzy to pętlę, która działa bez końca.
Pętle nieskończone mogą też wystąpić nieumyślnie, na przykład gdy warunek pętli jest zawsze true z powodu błędu logicznego:
int i = 0;
while (i < 10) {
Console.WriteLine("i is: " + i);
// Brakuje i++, aby zwiększyć i
}W tym przykładzie zmienna i nigdy nie jest zwiększana, więc warunek i < 10 jest zawsze true. Tworzy to nieskończoną pętlę, która będzie bez końca wypisywać „i is: 0”.
Pętle nieskończone mogą być przydatne w niektórych przypadkach, na przykład w programach serwerowych, które muszą działać aż do ręcznego zatrzymania. Mogą jednak również powodować zawieszanie się lub awarie programów, jeśli nie są odpowiednio obsługiwane.
Spróbuj swoich sił
Ta lekcja nie zawiera wyzwania z kodem.
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory, część 1
Operatory arytmetyczneOperator moduloInkrementacja/dekrementacjaPostinkrementacja/postdekrementacjaSkrócone operatory arytmetyczne7Podstawowe wejście i wyjście
Podstawowe wyjścieInterpolacja ciągów znakówOdczytywanie danych wejściowychParsowaniePowtórka — do 120Powtórka — prawda czy fałsz5Operatory część 2
Operatory porównaniaOperatory logiczne część 1Operatory logiczne część 2Powtórka — prosta logikaOperatory logiczne część 36Podejmowanie decyzji
Instrukcja ifIf - ElseInstrukcja switchOperator trójargumentowyPowtórzenie - If ElseZagnieżdżone If - Else9Pętle
Pętla forPętla whilePętla do whileInstrukcja breakInstrukcja continueZagnieżdżona pętlaNieskończona pętlaPowtórzenie – dynamiczne dane wejściowe12Operacje na ciągach znaków
Metody ciągów znaków – część 1Metody ciągów znaków – część 2Formatowanie ciągów znakówPoćwicz samodzielnie: Kompilator C# online