stm32f1对小数的处理

2019-03-23 17:47发布

一个奇异的现象
平台 :stm32f103c8t6
我把printf定向到了串口上,好能让信息打印到我的调试助手上,我有一个函数,return的值乘以了10倍,因为要考虑小数点后一位,后来想着再调试助手上打印出实际的值,所以需要打印小数了,于是乎就直接使用%3.1f的格式
举个例子
    int Iu_num = 245;
    printf( "%d ",Iu_num );  // 得到的是245
    printf( "%3.1f ",(float)Iu_num/10 );  // 得到的是00.0
这是为什么?

还有一个问题,是我不经意间想到的,stm32F1该如何处理小数点,不是简简单单的小数点,要保留后5位小数,而且还能与其他式子做运算
   比如:  y= a*b;其中a=0.00134,b=9.2;要得出准确的y值!  
   给个链接,或者帮着说明一下,我E金币还有一些,可以给你10个E金币作为报答。  好了 我去试试直接用float或者duble型去做下运算,我还没检验一下。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
ywlzh
1楼-- · 2019-03-23 21:37
/ 我去 全是对的,没问题了

这是怎么回事?
白丁
2楼-- · 2019-03-23 21:57
ywlzh 发表于 2017-2-28 17:35
我去 全是对的,没问题了

这是怎么回事?

论坛发帖有神奇的功效,信论坛无bug
linda
3楼-- · 2019-03-24 02:18
 精彩回答 2  元偷偷看……
ZHZ26
4楼-- · 2019-03-24 04:35
程序没有错,操作方法跟在上位机是一样的

一周热门 更多>