62
637
1988
助理工程师
使用特权
21
263
798
高级技术员
if((i>j+5)||(j>i+5)) { j=i; }
1.jpg (21.46 KB )
下载附件
2012-9-12 08:05 上传
2.jpg (22.17 KB )
556
1万
6万
版主
---------------------
1416
2万
7万
总工程师
对啊, 2楼 的程序没有考虑溢出问题, 所以是有 BUG 的. 类似问题, 我以前是这样处理的: (我假设INT8U 是 unsigned char) if((i-j+5)>10) { j=i; } 大家看看有没有问题. ... airwill 发表于 2012-9-12 13:56
72
740
2262
初级工程师
to 楼上, 你的办法不错, 不过不觉得效率太低吗? 特别是在 8 位机里, 弄个 16 位变量出来. 我的代码还是8位运算和比较, 如果可以避免溢出的影响, 效率又高 怎么叫 "缺心眼" 呢? ... airwill 发表于 2012-9-12 21:26
1
234
中级技术员
多谢楼上各位大侠 这样怎么样 大家觉得 if ((i > j) && (i - j ) >5) || ((j > i) && (j - i ) >5) 渤海三叠浪 发表于 2012-9-13 10:11
17
200
766
0
26
79
初级技术员
发表回复 本版积分规则 回帖后跳转到最后一页
等级类勋章
发帖类勋章
时间类勋章
人才类勋章
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注21ic项目外包
扫码关注21ic视频号
扫码关注21ic抖音号
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才 | 论坛帮助
京公网安备 11010802024343号