学习C语言中的函数,我们知道怎样设置固定个函数的参数,可当存在任意多个参数,函数该如何接收呢?这时就需了解函数的可变参数列表,通过将函数实现为可变函数的形式,使得函数可以接收任意多个参数。
1、举例:求实现一个函数可以计算任意个参数的平均值?
#include<stdio.h>
#include<stdlib.h>
#include<stdarg.h>
int Avg(int n, ...)//...代表未知个参数
{
va_list arg;//声明va_list型变量arg
va_start(arg, n); //初始化
int sum=0;
for (int i = 0; i < n; i++)
{
sum += va_arg(arg, int);//取参数
}
va_end(arg);//释放
return sum/n;
}
int main()
{
//printf 参数个数可变;
int ave = Avg(3,