#include <stdio.h>
#include <stdarg.h>
#if 1
/*
*在C语言中,可变参函数是指参数数量不固定的函数,比如printf\scanf
*可变参函数的语法:
*返回类型 函数名(固定函数,.....)
{
//函数体
}
*1、包含头文件 #include <stdio.h>
*2.定义函数:固定参数在前,可变参在后
*3.至少有一个固定参数
*4.va list:声明参数列表变量的类型,用于访问可变参列表
*5.va start:初始化参数列表
*6.va arg:获取可变参数
*7.va end:清理释放参数列表相关资源
*/
int mySum(int n,...)
{
//声明参数列表变量
va list args;
//初始化,且定位到第一个可变参数
va start(args,n);
int sum=0;
int i=0;
for(i=0;i<n;i++)
{
sum+=va arg(args,int);
}
va end(args);
return sum;
}
int main()
{
int n=5;
int ret=mySum(n,1,2,3,4,5);
printf("sum=%d\n",ret);
return 0;
}
#endif