问题标签 [iomanip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1219 浏览

c++ - 如何打印长双(全长)C++

我有一个很长的双精度数,我想使用 cout 打印它的所有数字(没有科学计数法的完整数字)。

这是代码:-

输出:-

虽然我希望输出是

我尝试了精度并设置精度,但似乎并没有以这种方式工作。请帮忙

0 投票
2 回答
1856 浏览

c++ - 用 std::cout 正确地用零填充负整数

我发现这个问题已经问过了,但每个人给出的答案是

这对于正数很好,但使用 -5,它会打印:

有没有办法让它打印 -0005 或强制 cout 总是打印至少 5 位数字(这将导致 -00005),就像我们可以用 printf 做的那样?

0 投票
1 回答
1131 浏览

c++ - 为 C++ 中的整数或双精度数重置 std::cout 的属性

在我的代码中的不同位置,我设置了某些流属性,例如 in std::cout << fixed << 4.56342;,以便在打印到标准输出时操纵integeror的显示方式。double有时在特定的运行时流程中,std::cout没有任何操作的情况下使用,但由于前面的操作而无意中转换了输出。

那么,重置所有此类属性的最佳方法是什么,std::cout以便调用的std::cout<<行为与以下示例完全相同:


我看到了有效使用 C++ iomanip 库,通常不直接使用操纵器是有意义的。这将是一个很好的战略。尽管如此,很高兴知道如何撤消我上面描述的所有此类操作。

0 投票
1 回答
239 浏览

c++ - 将基域设置为零

我知道那basefield是.dec/oct/hexsetfbasefield

g++ 4.8.1 结果是:

当取消设置所有基础标志值设置为与十六进制标志相同时,我运行代码 Visual C++ 2008 和 Intel C++ XE,结果为:

十六进制标志似乎与所有未设置的基数完全相同。

我想要的只是将标志设置为一个值,而不是dec\oct\hex这样当我实现自己的操纵器时,我可以检测到我的格式或流格式正在使用哪种格式。

谢谢。

0 投票
1 回答
406 浏览

c++ - 使用 iomanip 指令

我知道如何设置字段宽度,但仅适用于流中的第一个元素。例如。

生产

生产

如何使用 iomanip 库设置字段宽度,使其适用于所有生成的元素

而不是像下面这样写两次 setw(5) :

0 投票
3 回答
1769 浏览

c++ - 真的,与“固定”I/O 操纵器相反的是什么?

这可能是这个问题的重复,但我觉得它实际上没有得到正确回答。观察:

输出:1.00

现在,如果我们将该行更改为:

我们得到:1.000

如果我们使用固定的“相反”,我们会得到完全不同的东西:

输出:1.000e+00

设置后如何回到第一个版本的行为fixed

0 投票
1 回答
1259 浏览

c++ - C ++如何显示小数部分的确切数字

C ++(或boost lib)中有什么方法可以显示给定数字的小数部分吗?但我不想在小数部分打印尾随 0(例如1.000, 1.500)。看这个案例:

问题是setprecision打印第 1 行和第 2 行的方式不同,我希望同时打印0.7141.714. 并且仍然保留第 3 行和第 4 行11.5.

0 投票
3 回答
5555 浏览

c++ - C++中浮点数的全精度显示?

我已经阅读了几个关于在 C++ 中显示浮点数显示的主题,但我找不到令人满意的答案。

我的问题是: 如何以科学格式(尾数/指数)显示 C++ 中浮点数的所有有效数字?

问题是所有数字在基数 10 中的有效数字位数都不相同。

例如,adouble具有15 到 17位有效十进制数字精度,但std::numeric_limits<double>::digits10返回 15,因此,对于某些数字,我将失去 2 个额外的十进制数字精度。

0 投票
1 回答
162 浏览

c++11 - 为什么这个操纵器不与 -O3 链接?

我定义了一个操纵器:

我使用的是这样的:

所有这些都可以在调试和发布模式下使用 Boost.bjam 编译。但是,当需要链接时,我仅在发布模式下收到以下错误:

或者,更清楚地说:

如果我注释掉操纵器,一切都在调试和发布模式下编译和链接都很好。

如果我留在操纵器中,我可以通过使用 重建项目来解决链接器错误-O0,但是如果我的发布模式是 bjam 默认值 ( -O3),我会更喜欢它。

我正在运行 Xcode 4.6.2 及其相关的 clang:

如何让这个操纵器与优化正确链接?

0 投票
1 回答
642 浏览

c++ - 使用 cout 将输出文本右对齐

在我的程序中,我想像这样显示状态消息

但是现在当我使用它时如下所示\t

我试过 setw 但它就像(可能是因为实施不当)

那么有没有一种方法可以在不使用任何外部库的情况下格式化输出(即,没有 ncurses 等)

另请注意,输出终端的大小是已知的。