定义
void curl_log_msg(const char *fmt, …)
{
va_list args;
va_start(args, fmt);
vprintf(fmt, args);
va_end(args);
}
#define curl_error(fmt,…) curl_log_msg("[%s:%d]“fmt, FUNCTION,LINE,##VA_ARGS)
curl_error(” ptr:%p, stream:%p\n",ptr, stream);
示例代码
#include <stdio.h>
#include <stdarg.h>
#include <stdlib.h>
int sum(int number,...)
{
va_list vaptr;
int i;
int sum = 0;
int cc;
va_start(vaptr,number);
printf("number:%d\n",number);
for(i=0; i<number;i++)
{
cc = va_arg(vaptr,int);
printf("%d\n",cc);
sum += cc;
}
va_end(vaptr);
return sum;
}
int main()
{
printf("%d\n",sum(4,3,2,1,0));
return 0;
}