[AVR单片机] 为什么pow(2,8)算出来总是255,pow(2,3)=7?

[复制链接]
3701|8
 楼主| sea1105 发表于 2011-9-12 15:44 | 显示全部楼层 |阅读模式
 楼主| sea1105 发表于 2011-9-12 17:17 | 显示全部楼层
求高手指点下迷津啊??可能是哪里出了问题??
mcuisp 发表于 2011-9-13 14:27 | 显示全部楼层
怎么算出来的?膝盖么?
chen3bing 发表于 2011-9-13 14:34 | 显示全部楼层
加载math头文件了吗?
 楼主| sea1105 发表于 2011-9-14 18:15 | 显示全部楼层
4# chen3bing 加载了math.h和float.h两个浮点相关的头文件将pow函数算出来的值赋值给一个unsigned long变量,pow(2,8)就等于255了??   
 楼主| sea1105 发表于 2011-9-14 18:16 | 显示全部楼层
3# mcuisp ?????:L
chen3bing 发表于 2011-9-15 08:42 | 显示全部楼层
你用什么编译环境?我用WINAVR没问题呀!
z_zt 发表于 2011-9-16 17:29 | 显示全部楼层
我记得之前有看到,原因是你定义的变量类型和POW函数的不同,这个弄对了好象就对了。
uc_efm32 发表于 2011-9-16 18:14 | 显示全部楼层
为什么pow(2,8)算出来总是255,pow(2,3)=7?
-----------------------------------------------------------
你把小数点截断了。

int a=7.999999;
结果a是7,而不是8。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:25岁的我——年轻无极限! 30岁之前——实现梦想!

6

主题

54

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部