gpt4 book ai didi

c++ - double 和算术

转载 作者:太空狗 更新时间:2023-10-29 23:31:05 25 4
gpt4 key购买 nike

我用MSVC2008编译并运行这段代码

long double x = 111111111;
long double y = 222222222;
long double Z = x * y;

cout << z << endl;

当我调试时,z 等于

24691357975308640

数学上 z 应该是

24691357975308642

这是怎么回事?

最佳答案

double 只精确到 16 digits 左右.如果我算对了,那么你有 17 位数字,最多 16 位是正确的。如果你想做这种数学,并且只有整数,那么使用 ints。对于这么大的数字,您将需要使用 uint64_t

关于c++ - double 和算术,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9649800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com