用C ++调整标签宽度

时间:2010-09-29 05:12:54

标签: c++

有没有办法在控制台中调整标签宽度?

3 个答案:

答案 0 :(得分:2)

这不是一个真正的C ++问题,因为控制台完全取决于底层环境。例如,我知道无法使用Windows下的cmd.exe窗口执行此操作。

我认为可能是一种在类UNIX操作系统下使用stty执行此操作的方法,但在粗略搜索后我找不到它。

一种可能性是通过单独的过滤程序传递输出,如:

yourprogram | expand --tabs=4

但这超出了C ++应用程序的范围。

如果您希望能够以可移植的方式在C ++中执行此操作,则可能必须对其中一个输出流进行子类化,以便您可以保留当前列号的记录并将制表符转换为正确的空格数

答案 1 :(得分:2)

在您在问题中详细说明之前很难知道,但是您可能只想将一些合理的文本写入控制台,如果是这种情况,您可以:

#include <iomanip>

并使用:

std::setw

或可能

std::ios
std::setiosflags
std::resetiosflags

除非您在问题中提供更多细节,否则很难知道......

答案 2 :(得分:0)

尝试从msdn中找到GetConsoleWindow()。 你可以参考http://www.adrianxw.dk/SoftwareSite/Consoles/Consoles6.html