code one is:
int a = 0x42500000;
float *f = (float *)&a;
printf("%f", *f); //output 52.00000
code two is:
int a = 0x42500000;
float f = (float)a;
printf("%f", f); //output 0.00000
why code two output 0.00000,who can tell me why?