Boost相当于System :: String :: Format(“{0:D9}”,x);

时间:2013-06-28 17:41:43

标签: c# c++ boost

有没有人知道相应的提升

System::String::Format("{0:D9}", x); 

2 个答案:

答案 0 :(得分:4)

"{0:D9}"表示“零传递元素的十进制表示,最小宽度= 9。”。使用Boost相当于:

boost::format("%09d") % 42

答案 1 :(得分:3)

试试Boost.Format。语法不完全相同,但您应该能够用它完成所需的一切。您为{em>第一个参数(基于1而不是基于0)写{0:D9}%1$09d,零填充十进制数至少为9位。

cout << format("%1$09d %1$09d") % x << endl;

这会两次打印x的值。您也可以通过省略0或用空格替换它来填充空格而不是零:

cout << format("%1$9d %1$ 9d") % x << endl;