用M64仿真时
问题一:结果为什么会变为整数
a为float型。值为16241,
b为float型。值为1.0019
运行:
a=a>>5 结果a为小数507.53125
a=a*1.0019 结果变为整数511。
运行:
a=a/32 结果a为小数507.53125
a=a*1.0019 结果变为整数511。
如果:
a=a/32.0 结果a为小数
a=a*1.0019 结果a为小数511.4899。
问题二:把上面的整型的511放到下面的参数temp,取整后,有时v为511是对的,有时却成了510,为什么。
void toArrStr(float temp)
{
int v;
v=(int)temp;
。。。
} |