1、va_list、va_start、vsnprintf、va_end的使用方法和实例
#include <stdarg.h>
void test_char(const char* format, ...){
char buf[512];
va_list args;
va_start(args, format);
vsnprintf(buf, sizeof(buf), format, args);
va_end(args);
if (strlen(buf) >= sizeof(buf) - 1) {
printf("buffer may have been truncated \n");
}
printf("%s \n",buf);
}
int main()
{
char test1[5]="is";
char test2[5]="char";
char test3[5]="test";
int testint = 5;
test_char("This %s %s %s %d",test1,test2,test3,testint);
}