问题标签 [setw]

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 投票
2 回答
13494 浏览

c++ - “永久”std::setw

有什么方法可以永久设置std::setw机械手(或其功能)吗?width看这个:

运行后,我看到:

即除了必须为每个条目设置的setw/之外,每个操纵器都占有一席之地。width是否有任何优雅的方式如何使用std::copy(或其他)setw?我所说的优雅当然不是指创建自己的仿函数或函数来将内容写入std::cout.

0 投票
3 回答
2502 浏览

c++ - 在正确的列中显示文本

在这里得到一个有用的答案后,我遇到了另一个问题:在我希望显示的列中显示两个或多个字符串。对于我遇到的问题的一个例子,我想要这个输出:

而是得到

当我使用代码时

我确保(我认为)两列的宽度都可以包含两个字符串,但是无论我将列的宽度设置多大,错误仍然存​​在。

0 投票
2 回答
2307 浏览

c++ - 截断 ostringstream、iomanip:setw 生成的 C++ 字符串字段

在 C++ 中,我需要带前导零的整数的字符串表示形式,其中表示形式有 8 位且不超过 8 位,必要时截断右侧的数字。我以为我可以只使用 ostringstream 和 iomanip.setw() 来做到这一点,如下所示:

这里的输出是:

非常好!但是,如果我尝试更大的数字,setw 会让输出超过 8 个字符:

输出:

所需的输出是“20000000”。没有什么能阻止我使用第二个操作来只取前 8 个字符,但是 iomanip 中真的缺少字段截断吗?Boost 格式会一步完成我需要的吗?

0 投票
3 回答
1539 浏览

bash - BASH 中的 setw 和 setfill 等价物

您能否告诉我以下 C++ 片段的等效 BASH 代码是什么:

输出是:

谢谢您的帮助!

0 投票
1 回答
461 浏览

c++ - 在数字前加 0

可能重复:
使用 C++ 输出运算符打印前导零(等效于 printf)?

我希望输出00016
setw()前面带有空格。不是可以配置要添加哪些字符setw()吗?

我的最终目标是在 4 个位置打印一个 2 字节的十六进制数字。像这样的东西:

我期待得到这个输出:00A7

0 投票
2 回答
4884 浏览

c++ - 与 setw() 有什么关系?

我最近被这样一个事实所困扰,ios_base::width和/或必须在每个写入流的项目时重置setw操纵器。

也就是说,您必须这样做:

而不是这样:

好的。

但是有谁知道为什么做出这个设计决定?我是否缺少一些理由,或者这只是标准的一个黑暗角落?

其他流格式修饰符(如链接的 SO 问题中所述)是“粘性的”,而setw不是。

0 投票
2 回答
3721 浏览

c++ - 打印表格 C++

我正在尝试打印一个如下所示的表格:

等等等等

其中平均值是 getAverage(),最大值是 getMax()。

amount 包含阶梯式 Oc 值。

我一直试图用来执行此操作的代码如下:

我需要一些帮助来解决这个问题以正确显示表格,目前它到处都是。

0 投票
3 回答
8243 浏览

c# - 我需要 c# 中的一些东西,就像 c++ 中的 setw()

我在 c# 中使用richTextBox。我需要在一个richTextBox 中显示不同长度的字符串,但这些字符串应该完全对齐.. 这是一个例子..

我知道如何使用 setw 函数在 c++ 中执行此操作。但我在 c# 中找不到等效项。

0 投票
1 回答
117 浏览

c++ - 如何格式化输出

我想要一个干净的格式化输出,但结果并不像我想要的那样干净。下面是我的函数,它显示了输出,然后是输出。我正在使用 Dev-C++。感谢您的帮助。

0 投票
1 回答
329 浏览

c++ - std::setw() 在我的数组末尾插入一个 \0

好吧,我向您保证将setw()63 个字符复制到char * input而不是 64 个,并且我看到第 64 个字符显示在下一次 while(cin) 迭代中。可以覆盖此行为吗?我想要nul我的数组中的所有 64 个字符和 NO。