现在,该程序的目的是通过变量参数列表获取四个名称,并使用 vsprintf() 将它们连接成一个名为“total”的字符串。就目前的程序而言,只有名字出现在字符串“total”中。请问我该如何解决这个问题?谢谢 :)
问问题
549 次
1 回答
3
签名是int vsprintf(char *str, const char *format, va_list ap);
。
第二个参数是通常的printf
格式字符串......所以:
void concat(char *total, ...)
{
va_list pointer;
va_start(pointer, total);
vsprintf(total, "%s %s %s %s", pointer);
va_end(pointer);
}
这当然只适用于正好 4 个字符串,但您要求用 来实现它vsprintf
,这不适用于一般情况。
注意:您缺少<stdio.h>
,它是int main()
.
于 2012-10-10T16:21:16.033 回答