for(i = 0; i < 181; i++)
{
unsigned int index = rint(i/db);
assert(index >= 0 && index < data.ranges_count);
this->laser_ranges[i*2][0] = data.ranges[index] * 1e3;
}
rint(i/db)
的含义是什么?我不确定如何使用rint ......
答案 0 :(得分:5)
rint
是一个将浮点数舍入为整数的函数。这是一个非标准的功能。如果db
是整数类型,则i/db
将截断为整数,代码将无法按预期工作。否则,rint(i/db)
将i/db
舍入为最接近的整数。
至于 为什么 这里需要舍入(截断的内容)在很大程度上取决于我们完全不知道的问题的背景。
答案 1 :(得分:2)
这是一个名为rint
的函数调用,只有一个参数,在这种情况下是i
除以db
。
答案 2 :(得分:0)
rint
向最近的整数舍入并进行一些错误检查。
这里真正发生的事情取决于i
和db
的类型。