第一点:C语言中可以定义参数可以改变的函数
参数的可变函数的实现依赖于stdarg.h头文件
-va_list - 参数的集合
-va_arg - 取具体的参数值
-va_start- 标识参数访问的开始
-va_end- 标识参数访问的结束
可变参数的限制有以下方面:
1.可变参数必须从头到尾按照顺序逐个访问
2.参数列表中至少存在一个确定的命名参数
3.可变参数函数无法确定实际存在的参数的数量
4.可变参数函数无法确定参数的实际类型
注意:va_arg中如果指定了错误的类型,那么结果是不可预测的。我们可以想一下,我们在C语言中经常使用的printf()函数是不是就是可变参数的函数呢?答案:printf()函数就是一种可变参数的函数类型,printf()函数的内部就是通过可变参数函数的机制来设计出来的。