-3

我正在尝试将 double 类型变量转换为 long long int。我知道的唯一方法是铸造。虽然看起来没问题,但我没有收到我想要的号码。

我在下面发布代码:

double fator = 100000000;
long long int iLongitude = (long long int)(fLongitude*10000000);

我期望的数字是-4396478167,我得到-439647816,没有最后一位数字。

谢谢您的帮助!

4

1 回答 1

0

看来您只需要再添加一个零,然后还四舍五入:

(long long int)(fLongitude*100000000 + 0.5);

由于强制转换会截断结果,+ 0.5如果小数部分大于 ,则 将四舍五入0.5

于 2013-03-25T18:10:43.340 回答