1 #include <stdio.h>
2 
3 struct sss{
4   int :0;
5   int i2:24;
6   int i3:24;
7 };
8 
9 static union u{
10   struct sss sss;
11   unsigned char a[sizeof (struct sss)];
12 } u;
13 
14 int main (void) {
15   int i;
16   for (i = 0; i < sizeof (struct sss); i++)
17     u.a[i] = 0;
18   u.sss.i2 = 16777215.0;
19   for (i = 0; i < sizeof (struct sss); i++)
20     printf ("%x ", u.a[i]);
21   printf ("\n");
22   u.sss.i3 = 16777215.0;
23   for (i = 0; i < sizeof (struct sss); i++)
24     printf ("%x ", u.a[i]);
25   printf ("\n");
26   return 0;
27 }
28