Lezione 2: Variabili – Dal Caos dei Bit ai Nomi per i Tuoi Dati


Lesson 2

Lezione 2: Variabili – Dal Caos dei Bit ai Nomi per i Tuoi Dati


Bentornato, intrepido esploratore del linguaggio C! 🎩

Dopo aver fatto dire al tuo computer un semplice “Hello, World!” (e forse esserti chiesto perché un innocente saluto richieda così tanto codice), probabilmente ti starai chiedendo: “E ora che si fa?”. Bene, è il momento di alzare la posta in gioco e imparare a immagazzinare e manipolare i dati. Benvenuto nel magico mondo delle variabili! In C, le variabili sono come quei cassetti misteriosi in cucina dove puoi trovare di tutto: dalle forchette a… chissà cosa. Il trucco è sapere cosa mettere e dove.

Quindi, prendi il tuo drink preferito (caffè, tè, energy drink… o solo acqua, ma che noia!) e tuffiamoci nella magia delle variabili!


Cos’è esattamente una Variabile?

Immagina le variabili come contenitori che possono memorizzare dati. Pensa a loro come a delle scatole dove puoi infilare numeri, lettere o persino il numero dei giorni che mancano alla tua prossima vacanza. La magia delle variabili in C è che, a differenza del caos nel tuo armadio, devono essere etichettate e tipizzate correttamente. Se non lo fai bene, il C farà i capricci come un bambino senza il suo gelato.

Ecco la sintassi base per dichiarare una variabile in C:

int numero; // Dichiara una variabile chiamata 'numero' che memorizza un valore intero.

Ma aspetta, non finisce qui! In C non puoi semplicemente dare un nome a una variabile senza specificare che tipo di dati deve contenere. Vediamo i tipi di dati più comuni in C:

Tipi di Dati più Comuni in C

  • int – Usato per numeri interi (numeri senza decimali). È come dire: “Voglio una pizza intera, senza lasciare neanche un morso!”
  • float – Per i numeri con decimali. Se int è una pizza intera, float è quel minuscolo spicchio che cerchi di ignorare.
  • double – Come float, ma con doppia precisione. Perfetto quando hai bisogno di essere super preciso, tipo calcolare la velocità della tua connessione Wi-Fi (spoiler: mai abbastanza veloce).
  • char – Contiene un singolo carattere, come ‘A’, ‘z’ o persino quella faccina che userai quando finalmente capirai come funzionano i puntatori (o quella triste quando non li capirai mai).

Float vs. Double – La Battaglia per la Precisione!

Ok, parliamo della differenza tra float e double. È come paragonare due detective: uno (float) risolve il caso principale ma magari tralascia qualche dettaglio, mentre l’altro (double) non lascia scampo a nessun indizio, fino all’ultima impronta.

  • float: Un numero a virgola mobile a singola precisione che offre solitamente 6-7 cifre di precisione. Occupa 4 byte di memoria.
  • double: Un numero a virgola mobile a doppia precisione che fornisce 15-16 cifre di precisione, utilizzando 8 byte di memoria.

Quando Usare Cosa?

  • Usa float se stai lavorando su grafica, giochi o programmazione a livello hardware dove la memoria è limitata e la precisione non è fondamentale.
  • Usa double quando la precisione è cruciale, tipo nei calcoli scientifici o finanziari. Se devi calcolare la traiettoria di un razzo, scegli double (nessuno vuole finire su Marte per sbaglio!).

Vediamoli in azione.


Passo-Passo: Creare il File precision.c

  1. Apri il tuo editor preferito (o usa nano o vim se ti senti un ninja del terminale).
  2. Crea un nuovo file chiamato precision.c.
  3. Incolla il seguente codice in precision.c:
#include <stdio.h>

int main() {
    float floatPi = 3.141592653589793;   // Singola precisione (arrotondato)
    double doublePi = 3.141592653589793; // Doppia precisione (più accurato)

    printf("Float Pi: %.15f\n", floatPi);   // Output: 3.141592741012573
    printf("Double Pi: %.15f\n", doublePi); // Output: 3.141592653589793

    return 0;
}

Adesso, compiliamo ed eseguiamo questo codice.

Comandi di Compilazione ed Esecuzione

  1. Apri il terminale e vai nella cartella in cui si trova precision.c.
  2. Compilalo usando:
gcc precision.c -o precision
  1. Eseguilo:
./precision

Output Atteso:

Float Pi: 3.141592741012573
Double Pi: 3.141592653589793

Visto la differenza? float ti dà meno precisione a causa della sua dimensione ridotta, mentre double preserva ogni dettaglio come un vero mago della precisione.


Creare un Altro File: variable_demo.c

Creiamo un secondo file per sperimentare di più con le variabili:

  1. Crea un nuovo file chiamato variable_demo.c.
  2. Incolla questo codice all’interno:
#include <stdio.h>

int main() {
    int eta = 25;            // Crea una variabile intera chiamata 'eta' e la imposta a 25.
    float altezza = 5.9;     // Crea una variabile float chiamata 'altezza' e la imposta a 5.9.
    double distanza = 1000.123456; // Crea una variabile double con maggiore precisione.
    char iniziale = 'V';     // Crea una variabile carattere chiamata 'iniziale' e la imposta a 'V'.

    printf("Età: %d\n", eta);          // Output: Età: 25
    printf("Altezza: %.1f\n", altezza); // Output: Altezza: 5.9
    printf("Distanza: %.6lf\n", distanza); // Output: Distanza: 1000.123456
    printf("Iniziale: %c\n", iniziale); // Output: Iniziale: V

    return 0;
}

Compilazione ed Esecuzione

  1. Vai nella cartella in cui si trova variable_demo.c.
  2. Compilalo:
gcc variable_demo.c -o variable_demo
  1. Eseguilo:
./variable_demo

Se tutto è andato bene, dovresti vedere:

Età: 25
Altezza: 5.9
Distanza: 1000.123456
Iniziale: V

Pensieri Finali

Oggi abbiamo imparato come dichiarare le variabili, assegnare loro valori e stamparli a schermo. Ma questo è solo l’inizio! Le variabili sono i mattoni fondamentali dei tuoi programmi in C. Ti permettono di immagazzinare dati, manipolarli e, alla fine, creare sistemi complessi capaci di fare cose straordinarie.

Quindi, avanti! Crea! E ricorda: le variabili sono tue amiche… se le tratti bene, dai loro nomi sensati e le tipi correttamente.

Ci vediamo alla Lezione 3, dove esploreremo le operazioni e faremo lavorare queste variabili per noi! 🚀💻


Vedi anche