📢 Nuovo Corso Python Completo disponibile!

Strutture in C

In C, le strutture, talvolta chiamate anche struct, sono un modo di organizzare i dati in un singolo oggetto personalizzato. Le strutture consentono di raggruppare variabili di diversi tipi all’interno di una singola unità, facilitando la gestione e la manipolazione dei dati. In questa guida, esploreremo cosa sono le strutture, come dichiararle e come utilizzarle in C.

Cosa Sono le Strutture

Una struttura è una collezione di variabili di diversi tipi di dati, raggruppate in una singola unità. Ogni variabile all’interno di una struttura è chiamata campo o membro della struttura. Questi campi possono essere di qualsiasi tipo di dato, incluso altri tipi di strutture.

Ecco un esempio di dichiarazione di una struttura che rappresenta un punto nel piano:

struct Punto {
    int x;
    int y;
};

In questo caso, struct Punto è il nome della struttura, e x e y sono i campi della struttura di tipo int.

Dichiarazione di Variabili Struttura

Dopo aver definito una struttura, è possibile dichiarare variabili basate su quella struttura. Ad esempio:

struct Punto punto1;
struct Punto punto2;

Ogni variabile punto1 e punto2 è ora una struttura di tipo Punto e contiene due campi x e y.

Accesso ai Campi della Struttura

Per accedere ai campi di una struttura, utilizziamo l’operatore punto .. Ad esempio, per assegnare valori ai campi x e y di punto1:

punto1.x = 10;
punto1.y = 20;

Utilizzo di Strutture in Funzioni

Le strutture possono essere passate come argomenti alle funzioni o restituite come risultati. Ecco un esempio di funzione che restituisce una struttura Punto:

struct Punto sommaPunti(struct Punto p1, struct Punto p2) {
    struct Punto risultato;
    risultato.x = p1.x + p2.x;
    risultato.y = p1.y + p2.y;
    return risultato;
}

Strutture Anonime

È possibile dichiarare una struttura senza specificare un nome, creando così una struttura anonima. Questo può essere utile quando si desidera creare una struttura temporanea. Ad esempio:

struct {
    int giorno;
    int mese;
    int anno;
} dataDiNascita;

Conclusioni

Le strutture sono un modo potente per organizzare e manipolare dati in C. Consentono di creare oggetti personalizzati con campi di diversi tipi di dati e semplificano la gestione dei dati complessi. La conoscenza delle strutture è fondamentale per la programmazione in C e per la gestione efficiente dei dati.