问题标签 [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 投票
3 回答
122 浏览

c++ - 1 字节整数不转换 i/o 格式

我写了下面的代码,它以十六进制格式输入一个数字并以十进制格式输出:-

但是当我输入 c(12 的十六进制)时,输出又是 c(而不是 12)。有人可以解释一下吗?

0 投票
1 回答
125 浏览

c++ - C++模板方法选择正确的打印数据方式

我有一个用 C++ 编写的程序,它使用矩阵,我想将它们打印出来。在程序中,矩阵的类型要么是整数,要么是无符号字符。这是我现在用来打印的代码。

我的问题是,对于 unsigned char 矩阵,这些值不会被解释为数字。例如,对于零矩阵,输出不会显示在控制台上。有什么方法可以使用模板化方法中的类型信息来确定如何正确打印这两种类型的矩阵?我是否必须求助于使用具有正确格式字符串的 printf 的两种不同类型的打印方法?

0 投票
6 回答
337 浏览

c++ - 如何打印一堆具有相同格式的整数?

'0'我想用填充字符在 2 个字段上打印一堆整数。我可以做到,但这会导致代码重复。我应该如何更改代码以便可以排除代码重复?

我试过了

但它没有用,operator<<电话是模棱两可的。


编辑我得到了 4 个很棒的答案,我选择了一个可能是最简单和最通用的答案(也就是说,不假设我们正在处理时间戳)。对于实际问题,我可能会使用std::put_timeorthough strftime

0 投票
0 回答
799 浏览

c++ - 列内的 C++ 自动换行

我需要在 C++ 中输出一些如下所示的列:

从文件读取等中打印出一些结果等。

无论如何用setw(6)在c ++中进行自动换行???

我的代码如下所示:

但我的输出如下所示:

有什么建议么?谢谢。

0 投票
4 回答
1374 浏览

c++ - Can you pass a manipulator to a function?

I'd like to pass a list of manipulators to a function, something like this:

which would ideally be called by code something like this:

g++ 4.7.0 says:

Apparently, smanip isn't really defined in the standard, and C++11 compilers don't need to provide an explicit name for the type of manipulators. I tried declaring a type by leeching off of a known manipulator, like this:

This opened up a host of new error messages, including this one:

Should I just give up now, or is there a way to do this?

0 投票
3 回答
16929 浏览

c++ - 设置整数的位数

C++ 中有没有办法让编译器采用一定数量的数字,即使它们的第一个数字是 0。例如:

我有一个项目编号,即 00001,当我从文件中导入编号时,它显示 1。我希望它导入所有五位数字并显示为 00001。

我真的没有要显示的代码,因为我什至不知道要为此使用什么函数,而且我拥有的代码正在像宣传的那样工作,这不是我想要的。我可以将数字设为字符串,但我更愿意将其保留为整数。

0 投票
2 回答
13062 浏览

c++ - 如何限制 C++ 中用户输入的最大字符数?

我想要这样当用户输入超过 5 个字符时,会发生一些事情,而不是跳过其余的。

在此代码中,如果您输入超过 5 个字符,它将只显示前 5 个字符。我想在这里放一个“if”语句,如果用户输入超过 5 个字符,它将显示错误或其他内容,而不仅仅是显示前 5 个字符。

谢谢!

0 投票
6 回答
28116 浏览

c++ - C ++ - 用户输入后如何循环?

在我之前的问题中,我得到了这个答案,因此如果用户在国家名称中输入超过 5 个字符,它将输出错误。

我想要它,以便它在输出错误后循环回到“cout <<什么是名字......”。

谢谢!

有人在评论中回答了我之前的问题,但我没有让它工作/我不知道如何或将它放在我的代码中的位置。

0 投票
1 回答
8283 浏览

c++ - 在 C++ 中显示带有填充和固定位数的数字

我想使用填充(如有必要)和固定位数来显示数字。例如,给定以下数字:

像这样显示它们:

我正在尝试 std::fixed、std::fill、std::setw 和 std::setprecision 的组合,但我似乎无法得到我想要的东西。希望得到一些指导!

注意: 0 填充并不是很重要,但我仍然希望数字对齐,以便小数点在同一列中。

0 投票
1 回答
9810 浏览

c++ - 在 C++ 中按换行符拆分字符串

如果我有两个存储在std::string变量中的表,我怎么能并排显示它们?尤其...

我有std::string table1其中包含以下内容:

我有std::string table2其中包含以下内容:

我需要修改它们(或者实际上只是将它们打印到标准输出),以便出现以下内容:

换句话说,我有两个表存储在std::string变量中,用换行符分隔行。

我想将它们打印到屏幕上(使用std::cout),以便表格并排显示,在顶部垂直对齐。我怎么能这样做?

例如,如果我可以执行类似std::cout << table1.nextToken('\n')wherenextToken('\n')给出下一个标记并且标记由'\n'字符分隔的操作,那么我可以设计一种方法来循环遍历所有标记,并且一旦table1使用了所有标记,我就可以简单地打印空格字符,这样的剩余标记table2正确水平对齐。但是,这样的nextToken(std::string)功能不存在——至少我不知道。