[技术问题解答] 计算溢出问题

[复制链接]
1077|5
 楼主| moyou3344 发表于 2015-7-29 09:02 | 显示全部楼层 |阅读模式
用的是MC56F84462的芯片,两个long型数据相乘,运算结果超过32位,强制转化为long long型还是溢出,这款芯片是支持64位整形运算的,本人菜鸟一枚,跪求大神指导如何实现64位运算
cowboy2014 发表于 2015-7-29 09:04 | 显示全部楼层
相乘之后的数据有多大?
 楼主| moyou3344 发表于 2015-7-29 09:23 | 显示全部楼层
cowboy2014 发表于 2015-7-29 09:04
相乘之后的数据有多大?

超过32位,不到64位,十位数
kfliuyan 发表于 2015-7-29 10:19 | 显示全部楼层
都定义为long long试试。
FSL_TICS_ZJJ 发表于 2015-7-31 09:32 | 显示全部楼层
楼主你是把超过long的结果再强制转换为longlong吗?
那样是不行的,你可以把两个相乘的值都定义为long long然后结果值也是longlong再计算试下。
咕噜林 发表于 2015-8-5 21:39 | 显示全部楼层
把两个相乘的值都定义为long long然后结果值也是longlong再计算
这样的方法同样适用f64浮点数计算哦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

28

帖子

0

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