Array, Struct, Union e Typedef
I tipi derivati sono costruiti a partire dai tipi base. Abbiamo già visto i puntatori, ora esploriamo Array, Strutture, Union e Alias.
Un array è una sequenza di oggetti contigui in memoria, tutti dello stesso tipo. In C, gli array partono dall’indice 0.
int numeri[5]; // Un array in grado di contenere 5 interinumeri[0] = 10;numeri[4] = 99; // Ultimo elemento validoStrutture (struct)
Section titled “Strutture (struct)”A differenza dell’array, una struct permette di raggruppare sotto un unico nome variabili di tipi diversi. I singoli componenti sono chiamati membri.
Per accedere ai membri di una struct normale si usa il punto (.). Se hai un puntatore a una struct, si usa la freccia (->).
Creazione di Alias (typedef)
Section titled “Creazione di Alias (typedef)”La parola chiave typedef ti permette di creare un alias, ovvero un nuovo nome per un tipo già esistente. È comodissimo usato insieme alle struct.
typedef struct { int id; int eta;} Utente; // Ora posso usare "Utente" come un normale tipo di dato!
Utente u;u.eta = 25;Le union hanno la stessa sintassi delle struct, ma c’è una differenza cruciale: i membri di una union condividono tutti la stessa porzione di memoria. Di conseguenza, una union può memorizzare un solo membro alla volta. Serve principalmente a risparmiare memoria o per manipolare dati a basso livello.
💻 Esercizio Pratico: Struct e Puntatori
Section titled “💻 Esercizio Pratico: Struct e Puntatori”In questo esercizio, usa un puntatore a Libro per modificarne i valori. Ricorda l’operatore freccia (->)!