1barfoo (a) 2{ 3 return (a << 16) & ~0xffff; 4} 5 6foobar (a) 7{ 8 return ((unsigned short) a) << 15;} 9 10foo (a) 11{ 12 return (a & 0x121) << 31; 13} 14 15bar (a) 16{ 17 return (a & ~0xffff) << 16; 18} 19 20main () 21{ 22 int a; 23 24 for (a = 1; a; a += a) 25 { 26 printf ("%d", (foo (a))); 27 } 28 puts (""); 29} 30 31