1 typedef union 2 { 3 long align; 4 struct 5 { 6 short h, l; 7 } b; 8 } T; 9 f(x)10f (x) 11 int x; 12 { 13 int num = 0; 14 T reg; 15 16 reg.b.l = x; 17 while ((reg.b.l & 1) == 0) 18 { 19 num++; 20 reg.b.l >>= 1; 21 } 22 return num; 23 } 24 main()25main () 26 { 27 if (f (2) != 1) 28 abort (); 29 exit (0); 30 } 31 32