gpt4 book ai didi

c++ - 代码::在 Windows 中以固定精度阻止 printf double

转载 作者:行者123 更新时间:2023-11-28 04:52:05 25 4
gpt4 key购买 nike

我在两个不同的操作系统上构建并运行以下代码:

#include <bits/stdc++.h>
using namespace std;

int main(){

double d=1.123456;
printf("%.5lf ",d);
cout<<fixed<<setprecision(5)<<d;

return 0;
}

Ubuntu 输出中的代码:: block :1.12346 1.12346(如预期)

Code::Windows 输出中的 block :0.00000 1.12346(为什么 0.00000 !!!)

最佳答案

对于 printf 调用,您表明您正在传递一个长 double (使用“lf”)但只传递一个 double ,它在 ubuntu 上工作的事实是一个意外,而不是它正确的迹象。

如果您使用 %.5f 而不是 %.5lf 它应该在两种情况下都有效。

关于c++ - 代码::在 Windows 中以固定精度阻止 printf double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47964470/

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