1

我正在尝试制作一个可以像这样格式化我的文本输出的 c++ 函数:

#0 编号:80

#1 编号:80

#2 编号:80

#3 编号:80

ETC...

并在函数中有一个名为max的参数来限制输出量,例如:

如果 max 参数设置为 10,则最多只打印/输出 10 次:

#0 编号:80

#1 编号:80

#2 编号:80

#3 编号:80

#4 编号:80

#5 编号:80

#6 编号:80

#7 编号:80

#8 编号:80

#9 编号:80

#10 编号:80

我试图做的是下面的这段代码,但它没有按我的意愿工作:

void format_text(int max){

char Buffer[100];

static int amount;

for (int x = 0; x <= max; x++){

amount ++;

if (max > amount){

length += sprintf(Buffer+length,"#%d id: %d\n", amount, 80);

printf("%s", Buffer);

}

请帮助我完成我为您描述的功能

4

1 回答 1

5

也许您所追求的是ostringstream

std::string Buffer;
std::ostringstream oss;

//...
    oss << "#" << amount << " id: " << 80 << "\n";
//...

Buffer = oss.str();
于 2013-04-19T18:52:27.020 回答