, ! ... - , .
. , , ( f) . int . , , , , .
union AUnion
{
int i;
float f;
};
AUnion aUnion;
aUnion.i = 0;
printf("%f", aUnion.f);
, ? , , ints float . 32 . . aUnion.i = 0, " 0'd aUnion". 0'd , , 32- 0. , aUnion.f, : " aUnion, 32- ! , float, int. , 32 float, , .
, :
enum Enums { k1, k2, k3, k4 };
union MYUnion {
struct U{
char P;
}u;
struct U0 {
char state;
} u0;
struct U1 {
Enums e;
char c;
int v1;
} u1;
, int float. , , int. int , :
enum Enums { k1, k2, k3, k4 };
, , ,
union MYUnion {
struct U{
char P;
}u;
struct U0 {
char state;
} u0;
struct U1 {
int e;
char c;
int v1;
} u1;
,
MyUnion m;
m.u.P = 'h'
(, , ), . , P 1 , int - 4 . , .
, .