打印
[开发工具]

keil下浮点型变量与浮点常量之间的问题

[复制链接]
3287|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
stjdb1|  楼主 | 2010-8-28 14:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 stjdb1 于 2010-8-28 16:39 编辑

有个很奇怪的事
struct xxx{float a;unsigned char b;}x={0.1,0};
x.a==0.1 结果是假。。。。但是加了x.a==(float)0.1就好了。。。谁帮忙解释下。。
知道了。看汇编看出来的0.1在这里是double型的变量更加严谨的做法是0.1f加个后缀。好像两个都是float型直接比较的,只有double型调用了对比函数
沙发
原野之狼| | 2010-8-28 15:08 | 只看该作者
先了解一下浮点数的表示方式
浮点数做相等比较时 应该是和另外一个数进行差值 然后再判断差值是否小于一个极限

使用特权

评论回复
板凳
王紫豪| | 2010-9-1 04:47 | 只看该作者
本来就这样的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

10

帖子

2

粉丝