51uwb.cn
标题:
代码中做除法避免除0
[打印本页]
作者:
tuzhuke
时间:
2018-11-30 08:08
标题:
代码中做除法避免除0
为了管理方便,论坛是邀请制,如果需要注册论坛,点击论坛上方的“店铺”,旺旺联系免费获得邀请码
下面的代码,求多次测量的均值(中间除以1000 是将mm转换成m)
sprintf(dist_str, "an2:%3.2fm", (float)Anthordistance[2]/1000/Anthordistance_count[2]);
OLED_ShowString(0, 6," ");
OLED_ShowString(0, 6,dist_str);
复制代码
但是可能遇到的问题是,有个anthor 根本没有回复数据,那么
Anthordistance_count[2] 可能是0,
今天检查代码发现这个问题,之前程序竟然没有hang
下面才是正确做法,加一个判断
if(Anthordistance_count[1]>0)
{
sprintf(dist_str, "an1:%3.2fm", (float)Anthordistance[1]/1000/Anthordistance_count[1]);
OLED_ShowString(0, 4," ");
OLED_ShowString(0, 4,dist_str);
}
复制代码
欢迎光临 51uwb.cn (http://51uwb.cn/)
Powered by Discuz! X3.3