0Pricing
C Academy · Lezione

Cast espliciti

Conversioni manuali

Cast espliciti è una lezione C Academy gratuita su CoddyKit. Questa è la lezione 2 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 C Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C Academy include 4 lezioni in totale.

Che cos'è un cast

Un cast converte esplicitamente un valore in un altro tipo usando (type)value. Indica al compilatore esattamente ciò che desidera.

#include <stdio.h>
int main(void) {
    double d = (double)5;
    printf("%.1f\n", d);
    return 0;
}

Forzare la divisione reale

Converta un operando in double con un cast, così la divisione conserva la parte frazionaria.

#include <stdio.h>
int main(void) {
    int a = 7, b = 2;
    double r = (double)a / b;
    printf("%.2f\n", r);
    return 0;
}

Troncare intenzionalmente

Convertire un double in int elimina le cifre decimali. A volte è esattamente ciò che desidera.

#include <stdio.h>
int main(void) {
    double price = 19.95;
    int dollars = (int)price;
    printf("dollars = %d\n", dollars);
    return 0;
}

Cast e conversione implicita

Una conversione implicita avviene automaticamente; un cast documenta l'intento e impedisce la visualizzazione degli avvisi.

#include <stdio.h>
int main(void) {
    long big = 100000L;
    int n = (int)big;
    printf("n = %d\n", n);
    return 0;
}

Cast nelle espressioni

Un cast si applica solo al valore che lo segue, quindi l'ordine e le parentesi sono importanti.

#include <stdio.h>
int main(void) {
    int total = 5, count = 2;
    double avg = (double)total / count;
    printf("avg = %.2f\n", avg);
    return 0;
}

Cast tra char e int

Può eseguire un cast tra char e int per passare da un carattere al relativo codice e viceversa.

#include <stdio.h>
int main(void) {
    int code = 66;
    char c = (char)code;
    printf("c = %c\n", c);
    return 0;
}

Arrotondare con un cast

Aggiunga 0.5 prima del cast per arrotondare un numero positivo all'intero più vicino.

#include <stdio.h>
int main(void) {
    double d = 2.7;
    int rounded = (int)(d + 0.5);
    printf("rounded = %d\n", rounded);
    return 0;
}

Conversione a unsigned

Può eseguire un cast a unsigned, ma un valore negativo ritorna ciclicamente a un numero positivo molto grande.

#include <stdio.h>
int main(void) {
    int x = 10;
    unsigned int u = (unsigned int)x;
    printf("u = %u\n", u);
    return 0;
}

Evitare i cast superflui

Eseguire un cast quando la conversione è già sicura e implicita aggiunge solo rumore. Usi i cast quando chiariscono l'intento o sono necessari.

#include <stdio.h>
int main(void) {
    int a = 4;
    double d = a;
    printf("%.1f\n", d);
    return 0;
}

Cast in una formula

Un cast all'interno di un calcolo percentuale mantiene preciso il risultato.

#include <stdio.h>
int main(void) {
    int done = 3, total = 8;
    double pct = (double)done / total * 100.0;
    printf("%.1f%%\n", pct);
    return 0;
}

Cast con le funzioni matematiche

I cast sono utili quando si passano valori interi a operazioni matematiche in virgola mobile.

#include <stdio.h>
int main(void) {
    int n = 9;
    double root = (double)n / 3.0;
    printf("%.2f\n", root);
    return 0;
}

Verifica rapida

Verifichi la Sua comprensione dei cast espliciti.

Riepilogo: cast espliciti

Ha imparato a convertire intenzionalmente i tipi.

  • La sintassi è (type)value
  • Usi un cast per forzare la divisione reale
  • Usi un cast per troncare intenzionalmente
  • I cast documentano l'intento e impediscono la visualizzazione degli avvisi
  • Il cast agisce solo sul valore adiacente, quindi usi le parentesi

Domande Frequenti

La lezione «Cast espliciti» è gratuita?

Sì — il testo completo di «Cast espliciti» è 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 C Academy, passa a CoddyKit PRO. Il corso C Academy include 4 lezioni in totale.

Cosa imparerò in «Cast espliciti»?

Conversioni manuali Eserciti C 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 C Academy?

Non è richiesta alcuna esperienza precedente. C 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 2 di 4.

Quanto tempo richiede la lezione «Cast espliciti»?

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 C Academy?

Sì. Ogni lezione C 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. Conversioni implicite
  2. Cast espliciti
  3. Conversioni tra interi e float
  4. Problemi nelle conversioni
← Torna a C Academy