在keil中如何将浮点型转换为整型呢?

[复制链接]
6273|18
手机看帖
扫描二维码
随时随地手机跟帖
16号哨兵| | 2017-10-27 08:33 | 显示全部楼层
强制转换就可以了吧

使用特权

评论回复
yyj8902| | 2017-10-27 08:38 | 显示全部楼层
看你要求的转换精度了,转成整形,精度肯定变了。

使用特权

评论回复
mcu5i51| | 2017-10-27 09:43 | 显示全部楼层
1.检查数据范围
2.按照所需精度调整数据
3.强行转换,得到有效数据和精度相关数据

使用特权

评论回复
单片机菜菜| | 2017-10-28 08:39 | 显示全部楼层
在精度运行的情况下转换,强制转换会失去精度的。

使用特权

评论回复
gaoxiansheng| | 2017-10-28 08:45 | 显示全部楼层
16号哨兵 发表于 2017-10-27 08:33
强制转换就可以了吧

这样不就精度没了吗?

使用特权

评论回复
Boooooosh| | 2017-10-29 09:00 | 显示全部楼层
16号哨兵 发表于 2017-10-27 08:33
强制转换就可以了吧

是否可以在不丧失精度的情况下,保留为整数呢?

使用特权

评论回复
myidear| | 2017-10-29 09:06 | 显示全部楼层
gaoxiansheng 发表于 2017-10-28 08:45
这样不就精度没了吗?

是的,浮点型本来精度就比整形高,多了那么多小数点呀

使用特权

评论回复
麦克塔维什| | 2017-10-30 10:26 | 显示全部楼层
利用系统默认的转换,即将小数部分截去,仅保留整数部分,如3.6转换为3,-5.68转换为5。

使用特权

评论回复
liutongda| | 2017-10-30 10:32 | 显示全部楼层
c语言中没有四舍五入,将浮点型转换成整形时,只保留小数点前面的数值

使用特权

评论回复
Elric_QZH| | 2017-10-30 16:00 | 显示全部楼层
C/C++中的整数除法运算符“/”本身就有取整功能(int / int)

使用特权

评论回复
enginezhong| | 2017-10-30 16:03 | 显示全部楼层
强制类型转换。比如float a=3.678;那么(int)a的值就是3;就是把小数点后边的数据直接删掉

使用特权

评论回复
ahhsyf| | 2017-10-30 17:14 | 显示全部楼层
使用c/c++标准库函数:ceil()  需要加载头文件c中加载#include  c++中加载#include

使用特权

评论回复
布拉格梦语| | 2017-10-30 17:19 | 显示全部楼层
自己编写函数,实现“上行”整型化:即将浮点数转换成大于它的最小的整数。

使用特权

评论回复
dongbaohui| | 2017-10-30 21:59 | 显示全部楼层
其实是做舍入的运算了,想几舍几入最简单的办法是在原数上加个0.n就可以了,如:想四舍五入就——5.4  int(5.4+0.5)=5

使用特权

评论回复
电子玩霸| | 2017-10-30 22:12 | 显示全部楼层
什么情况下用到浮点数转为整数呢,直接用浮点数就好了

使用特权

评论回复
原味_郭| | 2017-10-30 23:07 | 显示全部楼层
电子玩霸 发表于 2017-10-30 22:12
什么情况下用到浮点数转为整数呢,直接用浮点数就好了

例如在图像的光栅化阶段,就要执行大量的类型转换,以便将浮点数表示的坐标转化为整数表示的屏幕坐标。

使用特权

评论回复
wodelqbz| | 2017-10-30 23:12 | 显示全部楼层
可以根据实际情况进行算法的转换

使用特权

评论回复
zhangyi3312| | 2017-10-31 08:23 | 显示全部楼层
看你用什么语言的呢,c还是c++的呢?

使用特权

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

本版积分规则

28

主题

356

帖子

1

粉丝