/*****************************************************************
** HighlightCodeV3.0 software by yzfy(雨中飞燕) http:// **
*****************************************************************/
/*****************************************************************
** HighlightCodeV3.0 software by yzfy(雨中飞燕) http:// **
*****************************************************************/
#include <stdio.h>
#include <stdarg.h> /*最主要的就是这个头文件了*/
#include <stdlib.h> /*这个和变参函数一点关系也没有,这个是我为了防止
屏幕一闪而过调用system("pause")用的*/
#define _max_args 31 /*定义参数的最大值*/
int sum(int n_param,...)
{
va_list ap; /*定义一个参数列表*/
int i;
int s=0;
if (n_param>_max_args)
n_param=_max_args;
va_start(ap,n_param); /*开始读取变量,n_param表示从变量n_param后面开始读取*/
for (i=0;i<n_param;i++)
s=s+va_arg(ap,int); /*va_arg表示从...里面读取一个int类型变量,然后把ap指向
下一个变量*/
va_end(ap); /*不要忘记这个哦*/
return s;
}
int main()
{
printf("%d",sum(5,1,2,3,4,5));
system("pause");
return 0;
}
** HighlightCodeV3.0 software by yzfy(雨中飞燕) http:// **
*****************************************************************/
/*****************************************************************
** HighlightCodeV3.0 software by yzfy(雨中飞燕) http:// **
*****************************************************************/
#include <stdio.h>
#include <stdarg.h> /*最主要的就是这个头文件了*/
#include <stdlib.h> /*这个和变参函数一点关系也没有,这个是我为了防止
屏幕一闪而过调用system("pause")用的*/
#define _max_args 31 /*定义参数的最大值*/
int sum(int n_param,...)
{
va_list ap; /*定义一个参数列表*/
int i;
int s=0;
if (n_param>_max_args)
n_param=_max_args;
va_start(ap,n_param); /*开始读取变量,n_param表示从变量n_param后面开始读取*/
for (i=0;i<n_param;i++)
s=s+va_arg(ap,int); /*va_arg表示从...里面读取一个int类型变量,然后把ap指向
下一个变量*/
va_end(ap); /*不要忘记这个哦*/
return s;
}
int main()
{
printf("%d",sum(5,1,2,3,4,5));
system("pause");
return 0;
}