对齐文本并更改空格量

时间:2013-04-20 10:52:03

标签: c++ c

我正在尝试格式化我的字符串,因为我有两个字符串,其中包含:“1”和

第二个包含:“test”并希望输出整个字符串,空格为:

1次测试

我这样说:

printf("%-10s %s", "1", "test");

但如何更改空间“%-10s”而不更改格式?

int amount_of_space = 10;

like: printf("%-*s %s", "1", "test", amount_of_space) 

我该怎么办?用C或C ++,请帮帮我

4 个答案:

答案 0 :(得分:1)

printf("%-*s %s", amount_of_space, "1", "test" );

答案 1 :(得分:1)

printf("%-*s %s", amount_of_space, "1", "test" ) ;

*首先出现在格式字符串中 - 因此参数amount_of_space必须在逗号后面。

,即格式字符串中的顺序为*,s& s - 所以在逗号之后,你需要填写*,第一个字符串然后第二个字符串。

答案 2 :(得分:1)

使用这个: printf("%-*s %s", amount_of_space, "1", "test" );

答案 3 :(得分:0)

在C ++中它将是:

cout << left << setw(amount_of_spaces) << "1" << "test";