Zig Academy · Lezione

if come istruzione ed espressione

Creare diramazioni e restituire valori nello stesso costrutto

Lezione 1 di 413 passaggi

if come istruzione ed espressione è una lezione Zig Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Zig Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Zig Academy include 4 lezioni in totale.

Diramare con if

Usi if per scegliere tra diversi percorsi. Zig esegue il primo blocco quando la condizione è true e lo salta altrimenti. Semplice ed esplicito. 🌿

if (score > 50) {
    std.debug.print("Pass\n", .{});
}

Le condizioni devono essere bool

La condizione tra parentesi deve essere un vero bool. Zig rifiuta interi o puntatori in questo punto, quindi non deve indovinare se un valore è truthy o falsy.

Aggiungere un else

Abbini if a else per gestire il caso false. Viene eseguito esattamente uno dei due blocchi, mai entrambi e mai nessuno.

if (ready) {
    start();
} else {
    wait();
}

Concatenare gli else if

Disponga più verifiche con else if per scegliere un ramo tra diversi. Zig le controlla dall’alto verso il basso e si ferma alla prima corrispondenza.

if (n < 0) {
    sign = -1;
} else if (n > 0) {
    sign = 1;
} else {
    sign = 0;
}

if è un’espressione

In Zig, if può anche produrre un valore. Entrambi i rami restituiscono qualcosa e l’intero if diventa il risultato che può assegnare.

const max = if (a > b) a else b;

Entrambi i rami devono corrispondere

Quando if produce un valore, entrambi i rami devono condividere un unico tipo. Il compilatore li armonizza affinché il risultato abbia un tipo unico e prevedibile.

Non serve un ternario

Zig non ha un operatore ternario. La forma espressione di if svolge questo ruolo in modo chiaro, mantenendo un solo modo di scrivere una scelta.

Rimuovere il wrapping di un optional

Un if può verificare e rimuovere il wrapping di un optional con una sola operazione. Il nome catturato contiene il valore interno solo quando è presente.

if (maybe_user) |user| {
    greet(user);
}

Catturare gli errori con if

Un if può anche scomporre una error union. Il ramo else può catturare il valore dell’errore quando l’espressione fallisce.

if (parse(text)) |value| {
    use(value);
} else |err| {
    report(err);
}

Le parentesi graffe sono obbligatorie

Zig richiede sempre le parentesi graffe attorno ai corpi di if, anche per una sola riga. In questo modo elimina un’intera categoria di bug causati da istruzioni ambigue.

Restituire in anticipo

Un modello comune consiste nell’usare un return anticipato all’interno di un if. Gestisca prima il caso speciale, poi lasci che il resto della funzione proceda in modo lineare.

if (list.len == 0) return;

Verifica rapida

Si desidera che max contenga il maggiore tra a e b in una sola riga. Quale forma di Zig funziona?

Riepilogo

Ha incontrato if sia come istruzione sia come espressione: condizioni bool, else ed else if, rami che restituiscono valori e cattura di optional o errori. 🎯

Gratis per iniziare

Impara Zig con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
30
Lezioni
120

Domande Frequenti

La lezione «if come istruzione ed espressione» è gratuita?

Sì — il testo completo di «if come istruzione ed espressione» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Zig Academy, passa a CoddyKit PRO. Il corso Zig Academy include 4 lezioni in totale.

Cosa imparerò in «if come istruzione ed espressione»?

Creare diramazioni e restituire valori nello stesso costrutto Eserciti Zig Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Zig Academy?

Non è richiesta alcuna esperienza precedente. Zig Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «if come istruzione ed espressione»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Zig Academy?

Sì. Ogni lezione Zig Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. if come istruzione ed espressione
  2. Cicli while ed espressioni continue
  3. Cicli for su intervalli ed elementi
  4. break, continue e cicli con etichette
← Torna a Zig Academy