【发布时间】:2017-04-26 03:48:12
【问题描述】:
假设我有一个 char 变量和一个整数变量。我想在输出它们时将它们视为一个变量(例如:B6、A2、C10 等)
我想在 4 个空格的位置右对齐这两个变量,但我终生无法弄清楚如何做到这一点。 (我想要下划线为空格的 _A10 和 __A6)
在 C++ 中可以做到这一点吗?
【问题讨论】:
-
我的解决方案是在输出变量和空格之前创建一个 if 语句并检查整数变量是否 >= 10,但这会使代码难以阅读。我想知道是否有 iomanip 解决方案
-
当您意识到计算机必须做什么时,这些类型的问题会变得更容易回答。由于是从左到右打印,所以打印
__A6意味着它需要在A之前打印两个空格,然后是一个6。关键字是before。在开始打印空格字符之前,您必须知道要打印的最后一个变量。 -
MSalters,如果您查看我的评论,我已经提到了这一点,并讨论了我自己的解决方法(如果整数变量可以是 3 位或 4 位等,这将更加乏味)。但是,我已经从其他 cmets 那里得到了一个 iomanip 解决方案,尽管我仍然不确定您的评论的目的是什么。