打印

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

[复制链接]
7513|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
余三水|  楼主 | 2017-10-26 22:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
16号哨兵| | 2017-10-27 08:33 | 只看该作者
强制转换就可以了吧

使用特权

评论回复
板凳
yyj8902| | 2017-10-27 08:38 | 只看该作者
看你要求的转换精度了,转成整形,精度肯定变了。

使用特权

评论回复
地板
mcu5i51| | 2017-10-27 09:43 | 只看该作者
1.检查数据范围
2.按照所需精度调整数据
3.强行转换,得到有效数据和精度相关数据

使用特权

评论回复
5
单片机菜菜| | 2017-10-28 08:39 | 只看该作者
在精度运行的情况下转换,强制转换会失去精度的。

使用特权

评论回复
6
gaoxiansheng| | 2017-10-28 08:45 | 只看该作者
16号哨兵 发表于 2017-10-27 08:33
强制转换就可以了吧

这样不就精度没了吗?

使用特权

评论回复
7
Boooooosh| | 2017-10-29 09:00 | 只看该作者
16号哨兵 发表于 2017-10-27 08:33
强制转换就可以了吧

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

使用特权

评论回复
8
myidear| | 2017-10-29 09:06 | 只看该作者
gaoxiansheng 发表于 2017-10-28 08:45
这样不就精度没了吗?

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

使用特权

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

使用特权

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

使用特权

评论回复
11
Elric_QZH| | 2017-10-30 16:00 | 只看该作者
C/C++中的整数除法运算符“/”本身就有取整功能(int / int)

使用特权

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

使用特权

评论回复
13
ahhsyf| | 2017-10-30 17:14 | 只看该作者
使用c/c++标准库函数:ceil()  需要加载头文件c中加载#include  c++中加载#include

使用特权

评论回复
14
布拉格梦语| | 2017-10-30 17:19 | 只看该作者
自己编写函数,实现“上行”整型化:即将浮点数转换成大于它的最小的整数。

使用特权

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

使用特权

评论回复
16
电子玩霸| | 2017-10-30 22:12 | 只看该作者
什么情况下用到浮点数转为整数呢,直接用浮点数就好了

使用特权

评论回复
17
原味_郭| | 2017-10-30 23:07 | 只看该作者
电子玩霸 发表于 2017-10-30 22:12
什么情况下用到浮点数转为整数呢,直接用浮点数就好了

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

使用特权

评论回复
18
wodelqbz| | 2017-10-30 23:12 | 只看该作者
可以根据实际情况进行算法的转换

使用特权

评论回复
19
zhangyi3312| | 2017-10-31 08:23 | 只看该作者
看你用什么语言的呢,c还是c++的呢?

使用特权

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

本版积分规则

28

主题

356

帖子

1

粉丝