Effettivamente non si capisce bene se abbia bisogno di una struttura dati che sia composta da più dati o se abbia bisogno di una struttura dati che gli permetta di essere vista come più dati.
La differenza, insomma, fra una struct e una union.
La struct rappresenta il classico record: una variabile composta da più variabili potenzialmente di tipo diverso.
La union rappresenta una variabile che può essere interpretata, di volta in volta, in modo diverso.
Esempio:
La prima (record) occupa 8 byte ed è composta da una variabile intera e 4 variabili carattere.codice:struct record { int intero; char c1; char c2; char c3; char c4; }; union unione { int intero; char c1; char c2; char c3; char c4; };
La seconda occupa 4 byte e può essere vista (indifferentemente) come un intero o una stringa di 4 caratteri (ciascuno dei quali indirizzabile separatamente).
Oppure ha semplicemente bisogno di una stringa...
Ciao.![]()