Lezione 1: Iniziare con il C – “Ciao, Mondo!” e Oltre


Lesson 1

Benvenuti nel Meraviglioso (e a volte Frustrante) Mondo del C!

Il linguaggio C è un po’ come un espresso: se ne bevi una tazzina, sei pieno di energia e pronto a tutto. Ma se esageri, la testa inizia a girare e ti chiedi perché hai deciso di complicarti la vita. Quindi, preparati a un’avventura, e cerchiamo di non farci venire il mal di testa… almeno non subito!

In questa lezione, faremo i primi passi scrivendo il classico programma “Ciao, Mondo!”. Pensa a questo come al tuo modo di presentarti al linguaggio C, per dirgli: “Ehi, sono amichevole e non qui per mandare tutto in crash… ancora.”


Obiettivi della Lezione:

  1. Configurare un ambiente di sviluppo.
  2. Installare il compilatore GCC su diverse distribuzioni Linux.
  3. Scrivere ed eseguire il tuo primo programma in C.
  4. Comprendere la struttura di base di un programma C.
  5. Compilare il codice usando gcc senza strapparsi i capelli.

Passo 1: Installare GCC sulla tua Distribuzione Linux

Prima di tuffarci nel codice, assicuriamoci che il compilatore GCC sia installato. Senza GCC, cercare di compilare codice C è come cercare di cucinare senza pentole: non funziona!

Segui le istruzioni qui sotto in base alla tua distribuzione Linux preferita:

Per Arch Linux (per chi ama le sfide):

  1. Aggiorna il sistema (Su Arch è sempre buona abitudine farlo prima di ogni cosa):

    sudo pacman -Syu
    
  2. Installa GCC:

    sudo pacman -S gcc
    
  3. Verifica l’Installazione: Esegui questo comando per verificare che GCC sia stato installato correttamente:

    gcc --version
    

Per Fedora (per chi è pratico e curioso):

  1. Aggiorna il sistema:

    sudo dnf update
    
  2. Installa GCC:

    sudo dnf install gcc
    
  3. Verifica l’Installazione: Controlla la versione di GCC per assicurarti che tutto funzioni bene:

    gcc --version
    

Per Ubuntu / Debian (per chi ama la stabilità a ogni costo):

  1. Aggiorna il sistema:

    sudo apt update
    
  2. Installa GCC:

    sudo apt install gcc
    
  3. Verifica l’Installazione: Esegui il comando seguente:

    gcc --version
    

Se appare il numero di versione, congratulazioni, sei pronto a partire!


Passo 2: Scrivere il famoso Programma “Ciao, Mondo!”

Se Shakespeare avesse scritto codice, “Ciao, Mondo!” sarebbe stato il suo “Essere o non essere”. Creiamo insieme il nostro primo programma:

  1. Crea un Nuovo File:
    Apri il tuo editor di testo preferito (Vim, Nano, o quell’editor oscuro che hai trovato l’altro giorno) e crea un nuovo file chiamato hello.c:

    nano hello.c
    
  2. Scrivi il Codice qui Sotto:
    Inserisci queste magiche righe di codice:

    #include <stdio.h>
    
    int main() {
        printf("Ciao, Mondo!\n");
        return 0;
    }
    

    Vediamolo nel dettaglio:

    • #include <stdio.h>: Questo dice al C di includere la Libreria Standard Input/Output. Pensa a questo come a importare una scatola di attrezzi che userai per mostrare il testo sullo schermo.
    • int main() { ... }: La funzione main() è il punto di partenza di ogni programma C. È come il capitano di una nave; senza di essa, la nave (programma) non parte.
    • printf("Ciao, Mondo!\n");: Questa linea stampa “Ciao, Mondo!” sullo schermo. Il \n alla fine aggiunge una nuova linea, perché non vogliamo che tutto sia ammassato.
    • return 0;: Questo dice al programma di uscire correttamente. Se il tuo codice si comporta male, restituire qualcosa di diverso da zero è come dire: “Oops, l’ho combinata grossa!”
  3. Salva ed Esci:

    • In Nano, premi Ctrl + X per uscire, Y per salvare e Enter per confermare.
    • In Vim, se sei bloccato, prova :wq e spera che funzioni. Se no, riavvia direttamente il computer (scherzo… più o meno).

Passo 3: Compilare il tuo Programma C

Ora che abbiamo scritto il codice, vediamo se il computer lo farà funzionare davvero. Questo è il momento in cui molti principianti in C hanno il loro primo facepalm.

  1. Compila Usando GCC:
    Nella tua terminale, esegui:

    gcc hello.c -o hello
    

    Decodifichiamo questo comando:

    • gcc hello.c: Dice a GCC (GNU Compiler Collection) di compilare il file hello.c.
    • -o hello: Dice al compilatore di nominare il file di output hello (invece di a.out, che sembra più un errore che un file).
  2. Esegui il Programma Compilato:
    Digita il seguente comando:

    ./hello
    

    Se tutto è andato bene, dovresti vedere:

    Ciao, Mondo!
    

    Se no, controlla se hai dimenticato un punto e virgola. I programmatori C hanno un rapporto di amore-odio con quei piccoli ;. Dimenticati di uno, e il compilatore te lo farà notare… con venti righe di errori criptici.


Passo 4: Analizzare la Struttura del Programma

Diamo un’occhiata più da vicino alla struttura del nostro codice:

  1. File di Intestazione (#include <stdio.h>):
    Pensa a questi come ai manuali di istruzioni. Se vuoi usare certe funzioni (come printf), devi dire al programma dove trovarle.

  2. La Funzione main():
    Questo è il punto di partenza del tuo programma. Senza di esso, il C non sa da dove iniziare. È come accendere il GPS senza impostare la destinazione.

  3. Le Graffe {}:
    Sono usate per raggruppare blocchi di codice. Se te ne dimentichi una, il tuo codice si comporterà in modo imprevedibile, proprio come dimenticare un pezzo del manuale IKEA.

  4. Funzione printf():
    Questa funzione mostra il testo sullo schermo. La useremo spesso, quindi preparati!

  5. return 0;:
    Questo termina il programma e dice al sistema operativo: “Tutto è andato bene!” Usalo con saggezza, o il sistema operativo penserà che il tuo programma sia andato in crash.


Compiti a Casa

  1. Modifica il programma per stampare il tuo nome, il linguaggio di programmazione preferito e un fatto divertente su di te.
  2. Crea un secondo file chiamato goodbye.c che stampi “Arrivederci, Mondo!” al posto di “Ciao, Mondo!”.

Consigli Bonus

  • Consiglio #1: Se il compilatore ti sgrida, non prenderla sul personale. È come un insegnante severo che vuole solo vedere un codice perfetto.
  • Consiglio #2: Commenta il tuo codice! Usa // per commenti su una sola riga e /* ... */ per commenti su più righe. Commentare è come lasciare post-it per il tuo futuro io.
  • Consiglio #3: Mai dimenticare return 0; – è come dimenticarsi di dire “ciao” a un amico dopo una lunga conversazione.

Conclusione

Congratulazioni! Hai appena scritto ed eseguito il tuo primo programma C. Oggi è “Ciao, Mondo!” – domani sarà conquistare la gestione della memoria a basso livello e dominare i puntatori (non preoccuparti, ci arriveremo).

Per ora, fatti una pacca sulla spalla e fammi sapere quando sei pronto per affrontare la Lezione 2!