#include <stdio.h> union my_union { int a; struct { char b1; char b2; char b3; char b4; } b; }; int main() { union my_union x; x.a = 1000; printf("x.a = %d\n", x.a); printf("x.b.b1 = %d\n", x.b.b1); printf("x.b.b2 = %d\n", x.b.b2); printf("x.b.b3 = %d\n", x.b.b3); printf("x.b.b4 = %d\n", x.b.b4); printf("%ld\n", sizeof(union my_union)); return 0; }