转 可变参数的简单实用方法--掌握此便足矣
#include "stdio.h"
#include "stdarg.h"
void show(const char * format,...);
int main()
{
?show("%04d%02d%02d %02d:%02d:%02d [%s:%d] %s\n",2011,4,21,15,33,20,__FILE__,__LINE__,"this is a test");
?getchar();
?return 0;
}
void show(const char * format,...)
{
?va_list ap;
?va_start(ap,format);
?char szLog[1000];
?szLog[0]='\0';
?vsprintf(szLog,format,ap);
?printf("%s",szLog);
?va_end(ap);
}