2015-01-20 20 views
0

我生成一个随机整数(在0 & 99之间),将其转换为字符串并成功通过蓝牙将其传输到第二台机器,然后将其转换回整数以供进一步处理。但是任何后续计算导致0回答我使用的是: -数字转换问题

str_int = strtol(buf, NULL, 10); 

但是,当我再尝试: -

height = (str_int/100); 

答案始终是0。我在想什么?对于OpenGL处理​​,我最终需要在-0.5和0.5之间调整这个随机数。

回答

2

假设高度是浮点或双:用C

height = (str_int/100.0); 

整数除法总是截断成整数其分配给您的变量之前。在编号末尾加上.0通知编译器,您希望该编号被解释为double,因此编译器会将该表达式解释为浮点除法。

+0

我想知道如果第一个操作数不确定操作类型... – 2015-01-20 23:28:55