gpt4 book ai didi

c++ - cout doubles 不切割变量

转载 作者:行者123 更新时间:2023-11-27 23:27:11 29 4
gpt4 key购买 nike

这是一些“伪”c++代码

double var = 5.5;
cout << var << endl;
double var2 = 6.0;
cout << var2 << endl;

5.5
6

问题是某些代码可能期望它是 6.0。有人知道如何更改输出流吗。

好的,这是我试过的一些示例代码

 double t = 6.0;
while (t > 0.1) {
t = t - 0.1;
cout << setprecision(2) << t << endl;
}

输出是

5.9
5.8
...
5.2
5.1
5
4.9
4.8
4.7

最佳答案

std::setprecisionstd::fixed 一起使用:

std::cout << std::fixed << std::setprecision(1) << var2 << std::endl;

查看演示:http://ideone.com/Arz85

只有 std::setprecision(1) 不起作用。您还必须使用 std::fixed

不要忘记包括这个:

#include <iomanip>

我猜你已经在你的代码中编写了using namespace std。如果是这样,那就不要那样做。编写完全限定的名称,例如 std::cout,而不是 cout。查看这些主题:

关于c++ - cout doubles 不切割变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8474508/

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