我不确定这两个变量发生了什么。“milliV”是双倍,“param1a”是双倍,因为 param1a=65,我应该得到 1.588。我得到的结果是= 0。这怎么可能?
double milliV=0.0;
milliV= (5/1023*param1a/200*1000);
因为5/1023
这是一个整数除法,所以结果也是整数。试试这个
milliV= (5.0/1023*param1a/200.0*1000);
只要操作的要素之一是double
,结果也会double
是
5/1023 是问题 5,1023 是整数,所以 5/1023 = 0
看起来 5/1023 = 0 因为 5 和 1023 都是整数
尝试将 5/1023*param1a/200*1000 更改为
5.0 / 1023.0 * param1a / 200.0 * 1000.0