about >> in C

Hello

whell i have

Code:
unsigned int width = 1024
printf("%f\n", (float)(width >> 1));

result 512 it's OK.

But

Code:
unsigned int width = 1024
printf("%f\n", (float)(-(width >> 1)));

Result a big number ??? Whay ???

Thanks
 
Back
Top