str=va_arg(vl,char*);
} while (str!=NULL);
va_end(vl);
}
int main ()
{
PrintLines ("First","Second","Third","Fourth",NULL);
return 0;
}
/* va_arg example */
#include
#include
void PrintLines ( char* first, ...)
{
char* str;
va_list vl;
str=first;
va_start(vl,first);
do {
printf ("%s\n",str);
str=va_arg(vl,char*);
} while (str!=NULL);
va_end(vl);
}
int main ()
{
PrintLines ("First","Second","Third","Fourth",NULL);
return 0;
}
PrintLines函数使用了可变参数。第一个传递的参数是first,但是余下的参数都是在do-while循环中使用
va_arg一次获得了,该循环在获取的可变参数为null指针的时候结束。
摘自 chenlong12580的专栏