有这么一个函数,输入是2个int型数,计算后返回一个int类型数据,函数如下
int vot_to_ris(int SenVot,int VerfVot) { float temp1; int temp; temp1 = (390 * SenVot) / ((2 * VerfVot) - SenVot); temp = (int)(temp1); return temp; }
其中SenVot和VerfVot的取值都是0-0x1FF;然后函数返回的int类型值通过/255和%255的方式分别取出高低位利用putchar送出
目前的问题是:当SenVot较大的时候得到的数据值不对,小的时候就没啥问题,我个人估计是在计算过程中类型转换的问题,但是修改了好几次问题依旧,大家能否帮我看看应该怎么处理,谢谢 |