正确证明C 中的两个变量合理(我想将它们视为一个变量)



假设我有一个char变量和一个整数变量。我想在输出它们时将它们视为一个变量(例如:B6,A2,C10等(

我想在4个空间插槽中正确地证明这两个变量的合理性,但是我一生都无法弄清楚如何做到这一点。(我想要_a10和__a6,其中下划线是空间(

可以在C ?

中执行此操作

这是一个没有提升依赖性的解决方案。将整数转换为字符串,与char串联,并将流宽度与std::setw设置。例如:

#include <iostream>
#include <iomanip>
int main(void)
{
    char a = 'A', b = 'B';
    int ai = 10, bi = 6;
    std::cout << std::setw(4) << (a + std::to_string(ai)) << std::endl;
    std::cout << std::setw(4) << (b + std::to_string(bi)) << std::endl;
}

在我的计算机上,这是:

 A10
  B6

使用boost.format将printf式格式应用于c 流。

#include <iostream>
#include <string>
#include <boost/format.hpp>
int main()
{
  char c = 'A';
  int i = 10;
  std::cout << boost::format("|%4s|") % (c + std::to_string(i)) << 'n';
}

输出:

| A10|

最新更新