一、简单版本
http://www.runoob.com/cprogramming/c-standard-library-stdarg-h.html
作用:帮助不定长参数的使用
va_list:一个特殊的类型,在va_start(), va_arg(), va_end()这三个宏当中使用
va_start():开始不定长参数的使用
va_arg():读入不定长参数
va_end():结束不定长参数的使用
例如:有一个函数,有不定长参数
void foo(int, ...);
完整例子:
#include <stdio.h>
#include <stdarg.h>
void foo(int, ...);
int main(void) {
double x = 1.1, y = 2.1, z = 3.9;
double a = 0.1, b = 0.2, c = 0.3;
puts("Three parameters: ");
foo(3, x, y, z);
puts("Six parameters: ");
foo(6, x, y, z, a, b, c);
return 0;
}
void foo(int len, ...) {
va_list args;
va_start(args, len);
for(int j = 0; j < len; j+