c++ - 使用带 double 的 << 时防止 ostream 中的科学记数法

标签 c++ iostream scientific-notation

我需要防止我的替身在我的文件中以科学计数法打印,

当我这样做时

outfile << X;

最佳答案

要设置 float 变量的格式,您可以使用 setprecision(n) 的组合。 , showpointfixed .为了使用像 setprecision(n) 这样的参数化流操纵器,您必须包含 iomanip 库:

#include <iomanip>

setprecision(n):将 float 输出限制在 n 个位置,一旦你设置了它,它就会被设置,直到你在剩下的时间里明确地取消它流输出。

fixed:将强制所有 float 以相同的方式输出。所以如果你的精度设置为4位,6.26.20都会输出为:

6.2000
6.2000

showpoint:将强制显示浮点变量的小数部分,即使它没有明确设置。例如,4 将输出为:

4.0

一起使用它们:

outfile << fixed << showpoint;
outfile << setprecision(4);
outfile << x;

关于c++ - 使用带 double 的 << 时防止 ostream 中的科学记数法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2335657/

相关文章:

android - 在 Android undefined reference 上使用 FFTW

c++ - 格式化输出

将二进制大整数转换为科学计数法并截断为 1 位尾数的算法

r - 防止 as.character 使用指数符号 r

c++ - 为什么 cout << set precision(2) << 0.999 的输出是 1 而不是 1.0?

c++ - 该程序中的 16 位数学是否调用了未定义的行为?

c++ - 如何将文本放入 OpenCV 中的边界框?

c++ - 在静态对象的析构函数中使用 cout

c++ - 我正在计算文件中的字符数,但我想计算小于 5 和 6 或更大的单词数

c++ - 将 RAII 与 C++ 流和 STL 容器一起使用?