2017-03-01 125 views
0

我运行下面的代码:司与小数

float fSpeed = 1 + (uRate/10); 

尿酸是-5。

我希望得到的结果,因为0.5(尿酸盐/ 10)应为-0.5

然而,fSpeed为0 是否有人看到我的错误?

谢谢。

+2

第一个错误是未提供[mcve] – PaulMcKenzie

+0

可能整数除法被截断。 1/2 = 0 – user4581301

+0

假设uRate是一个int并且等于'-5','(uRate/10)'产生'-1'。 –

回答

2

刚写

float fSpeed = 1 + (uRate/10.0f); 

在这种情况下,表达(uRate/10.0f)将有一个浮点值由于通常的算术转换