Menu
Coddy logo textTech

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.

quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore C# online