Ciclo infinito
Fa parte della sezione Fondamenti del percorso C# di Coddy. Lezione 47 di 69.
Un ciclo infinito è un ciclo che non si ferma mai perché la sua condizione restituisce sempre true. Questi cicli possono verificarsi con qualsiasi tipo di ciclo (for, while, do-while), ma sono più comunemente associati ai cicli while e do-while perché le loro condizioni sono dichiarate esplicitamente.
Ecco un esempio di ciclo while infinito:
while (true) {
Console.WriteLine("This will print forever!");
}In questo caso, la condizione è semplicemente true, che restituisce sempre true. Pertanto, il ciclo verrà eseguito indefinitamente, stampando il messaggio ripetutamente.
Un altro modo per creare un ciclo infinito è omettere la condizione in un ciclo for:
for (;;) {
Console.WriteLine("This also prints forever!");
}Qui, le parti di inizializzazione, condizione e aggiornamento del ciclo for sono tutte omesse. Questo crea un ciclo che viene eseguito all'infinito.
I cicli infiniti possono verificarsi anche involontariamente, ad esempio quando la condizione del ciclo è sempre true a causa di un errore logico:
int i = 0;
while (i < 10) {
Console.WriteLine("i is: " + i);
// Manca i++ per incrementare i
}In questo esempio, la variabile i non viene mai incrementata, quindi la condizione i < 10 è sempre true. Questo crea un ciclo infinito che continuerà a stampare "i is: 0" all'infinito.
I cicli infiniti possono essere utili in alcuni casi, ad esempio nei programmi server che devono continuare a funzionare finché non vengono arrestati manualmente. Tuttavia, possono anche causare il blocco o l'arresto anomalo dei programmi se non vengono gestiti correttamente.
Provalo tu
Questa lezione non include una sfida di codice.
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiOperatore moduloIncremento/DecrementoIncremento/Decremento postfissoAbbreviazioni aritmetiche7Input/Output di base
Output di baseInterpolazione di stringheLettura dell'inputParsingRipasso - Fino a 120Ripasso - Vero o falso5Operatori Parte 2
Operatori di confrontoOperatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica sempliceOperatori logici Parte 33Variabili Parte 2
VarCostantiConvenzioni di denominazioneRiepilogo - Inizializzare le variabiliConversione dei tipi6Prendere decisioni
Istruzione ifIf - ElseIstruzione switchOperatore ternarioRiepilogo - If ElseIf - Else annidati9Cicli
Ciclo forCiclo whileCiclo do whileBreakContinueCiclo annidatoCiclo infinitoRiepilogo - Input dinamico12Operazioni sulle stringhe
Metodi delle stringhe Parte 1Metodi delle stringhe Parte 2Formattazione delle stringheEsercitati da solo: Compilatore C# online