int ix;
float fx;
ix = INT_MAX;
show_int(ix); // ff ff ff 7f
fx = (float)ix;
show_float(fx); // 00 00 00 4f
iy = (int)fx; // ix != iy
show_int(iy); // 00 00 00 80
iy = (int)(float)ix;
请大侠指点,为什么(int)(float)ix和分开先fx =(float)ix再(int)fx结果不一样呢?按照转换的规则,应该是后者正确,那前者是什么机理呢?大家多多发言哈!!!