请问乘积超过2的32次方怎么处理?

2019-07-14 13:58发布

我的程序是这样的:accel_lim = ((long)step*decel) / (accel+decel);由于step和decel比较大,所以他们的乘积可能超过2的32次方-1,但是除以(accel+decel)后肯定是小于2的32次方的,为什么我算出来的结果是错误的。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
fantasyo老时光
1楼-- · 2019-07-15 04:43
你我然后 发表于 2019-2-27 14:25
用int64吧。。。

本帖最后由 yanhaijian 于 2015-8-26 10:28 编辑

KEIL识别不了这个关键字。应该是__int64。
7762642422d
2楼-- · 2019-07-15 08:40
long long类型的支持。
TOPCB
3楼-- · 2019-07-15 13:33
 精彩回答 2  元偷偷看……
分修一班人
4楼-- · 2019-07-15 17:03
fantasyo老时光 发表于 2019-2-27 15:05
这样会丢精度。

使用浮点数应该没问题的吧

一周热门 更多>