#include <stdio.h> #include <stdarg.h> int add(int n,...) { va_list v;//保存可以边长的参数列表 va_start(v, n);//从n之后的所有参数保存之 int i; int sum = 0; for(i = 0; i < n; i++) { int data = va_arg(v, int); printf("%d\n",data); sum += data; } va_end(v);//释放列表 printf("%d\n",sum); return 0; } int main() { add(4, 1, 2, 3, 4); return 0; } #include <stdio.h> #include <stdarg.h> #include <stdlib.h> void run(int n, ...) { va_list v;//创建可变长参数列表 va_start(v, n); int i; for(i = 0; i < n; i++) { char *p = va_arg(v,char *); system(p); } va_end(v); } int main() { run(3,"calc","notepad","tasklist"); return 0; }