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; } /* 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的专栏
|