【单片机】单片机中,pow(10,2) = 99,为什么?

[复制链接]
查看11 | 回复4 | 2018-5-11 09:24:56 | 显示全部楼层 |阅读模式
不知道你是怎么看计算结果的?这指数函数是按浮点数计算的结果,是有小数的,你是取整了吗?那就得到了错误结论。所以,你这四行的计算结果都是错误的,并非如此,见下图的计算pow(10,2) = 99.99999因为,这种函数是用级数来计算的,所以,结果并不是整数。...
回复

使用道具 举报

千问 | 2018-5-11 09:24:56 | 显示全部楼层
数制问题,pow为double型,在转换为int型时会有数值丢失...
回复

使用道具 举报

千问 | 2018-5-11 09:24:56 | 显示全部楼层
为了避免截断取整带来的错误,可以加一个很小的数(int)(pow(10,2)+0.000001)...
回复

使用道具 举报

千问 | 2018-5-11 09:24:56 | 显示全部楼层
(int)pow(10,2))...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行