Archivio
Opzioni


Ricerca














C++


Le Struct


Le struct, o strutture, sono insiemi di dati di tipi diversi. Utilizzando le struct si possono quindi codificare delle tabelle, che possono contenere interi, caratteri o altre strutture complesse come array. Ogni singolo dato della struct č detto campo, mentre la struct intera puņ essere chiamata record.
Una struct si dichiara in modo globale con la seguente sintassi:

struct NomeStruttura
	tipo_elemento1 nome_elemento1;
	tipo_elemento2 nome_elemento2;
	...
};

In questo modo noi abbiamo definito solo un nuovo tipo di struttura, ma non abbiamo ancora creato alcuna variabile. Per far questo possiamo procedere in 3 modi:
  1. Elencare le variabili da dichiarare separate da una virgola dopo le parentesi graffe della dichiarazione della struttura. Ad esempio:
    	struct contatto
    	{
    		int id;
    		char nome[20];
    		int telefono[10];
    		char indirizzo[20];
    	} contatto1, contatto2;
    
  2. Dichiarare le variabili di tipo struct come delle normalissime variabili, facendo precedere al nome della variabile il tipo "NomeStruttura". Ad esempio:
    	struct contatto
    	{
    		int id;
    		char nome[20];
    		int telefono[10];
    		char indirizzo[20];
    	};
    	...
    	contatto contatto1, contatto2;
    
Possiamo anche inizializzare un variabile struttura in fase di dichiarazione, facendo seguire al nome della variabile un uguale e i dati da mettere nei campi della struttura contenuti tra parentesi graffe e separati dalla virgola. Ad esempio:
contatto contatto1 = {0, "Rossi Mario", 03928723, "via XX settembre, 1"}
Ogni singolo campo della variabile di tipo struct puņ essere considerato come una variabile singola, e possiamo richiamarla nel modo seguente:
Nome_Variabile.Nome_Campo
Infine utilizzando le struct possiamo creare una tabella formata da diversi record (righe), semplicemente creando un array di dati di tipo struttura. Ad esempio, utilizzando la struct di prima possiamo creare una rubrica di contatti scrivendo:
contatto rubrica[100];
In questo modo abbiamo creato una rubrica di 100 contatti, e se ad esempio vogliamo accedere e stampare a video il nome del primo contatto dobbiamo scrivere:
cout<<rubrica[0].nome
<< La ricorsione INDICE TEORIA C++ I Puntatori >>