// 7.2: union
#include <iostream>
using namespace std;
// definisco una union Prova
union Prova {
int myint;
unsigned char mychar;
float myfloat;
};
int main() {
Prova a; // istanzio a
a.myint = 256 + 2; // assegno un valore a myint
cout << a.myint << endl;
cout << (int)a.mychar << endl;
a.myfloat = 3.14159265358979323; // assegno un valore a myfloat
cout << a.myfloat << endl;
cout << a.myint << endl;
Prova *b = &a; // creo un puntatore che punta ad a
cout << b->myfloat << endl; // l'operatore -> va usato anche con le union
cout << b->myint << endl;
};