有没有办法在 C++ 中为 TAB 字符(反斜杠 t)“\t”设置特定数量的最大空格?
Is there a way to set a specific amount of maximum spaces for TAB character (backslash t) "\t" in C++?
我想打印一个方阵,每个元素之间需要 spaced 3 spaces。然后我发现 char '\t'
可能是最简单的方法。但是,我认为 space 的数量是以某种方式在某些算法中定义的。有人可以通过该算法给我一个指导,或者有没有办法在 C++ 中为 '\t'
设置某些 space?
我知道如何通过确定space个字符的数量来手动输出。然而 '\t'
似乎很容易编写代码而不是循环某些算法。
对于简单的方阵:
for (int x = 0, num = 1; x < 5; x++) {
for (int y = 0; y < 5; y++, num++) {
cout << num << "\t";
}
cout << endl;
}
代码输出
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
在我需要的时候
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
有没有办法设置'\t'?
我很确定选项卡的大小是由您的控制台定义的,因此这将是您的 IDE 的设置。
如果您想要一致数量的空格,最好使用空格。这样你就不必改变你 运行 你的代码的所有内容的控制台设置。为什么不做类似
的事情
" "
而不是“\t”?
编辑:显然 Stack overflow 不支持多个空格 in-text。
But, I think the number of spaces is somehow defined in certain algorithm.
...
Is there a way to set '\t'
?
除非您连接的终端允许您以某种方式控制它。
使用 I/O manipulators 控制输出格式的常用方法,适合您的情况
std::setw()
std::left
(或者对于数字可能更好std::right
)
我想打印一个方阵,每个元素之间需要 spaced 3 spaces。然后我发现 char '\t'
可能是最简单的方法。但是,我认为 space 的数量是以某种方式在某些算法中定义的。有人可以通过该算法给我一个指导,或者有没有办法在 C++ 中为 '\t'
设置某些 space?
我知道如何通过确定space个字符的数量来手动输出。然而 '\t'
似乎很容易编写代码而不是循环某些算法。
对于简单的方阵:
for (int x = 0, num = 1; x < 5; x++) {
for (int y = 0; y < 5; y++, num++) {
cout << num << "\t";
}
cout << endl;
}
代码输出
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
在我需要的时候
1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
有没有办法设置'\t'?
我很确定选项卡的大小是由您的控制台定义的,因此这将是您的 IDE 的设置。 如果您想要一致数量的空格,最好使用空格。这样你就不必改变你 运行 你的代码的所有内容的控制台设置。为什么不做类似
的事情" "
而不是“\t”?
编辑:显然 Stack overflow 不支持多个空格 in-text。
But, I think the number of spaces is somehow defined in certain algorithm.
...
Is there a way to set'\t'
?
除非您连接的终端允许您以某种方式控制它。
使用 I/O manipulators 控制输出格式的常用方法,适合您的情况
std::setw()
std::left
(或者对于数字可能更好std::right
)