【正确答案】
【答案解析】C语言中支持函数调用的参数为变参形式。例如,printf()这个函数,它的函数原型是intprintf(const char* fofmat,...),它除了有一个参数format固定以外,后面跟的参数的个数和类型都是可变的,可以有以下多种不同的调用方法:
1)printf("%d",i);
2)printf("%s",s);
3)printf("the number is%d,string is:%s",i,s);
printf()函数是一个有着变参的库函数,在C语言中,程序员也可以根据实际的需求编写变参函数。如下程序示例代码,实现了一个变参函数add2(),该函数实现多参数求和运算。
#include<stdio.h>
int add2(char num,...)
{
int sum=0;
int index=0;
int *p=NULL;
p=(int*)&num+1;
for(;index<(int)num;++index)
{
sum+=*p++;
}
return sum;
}
int main()
{
int i=1;
int j=2;
int k=3;
printf("%d/n",add2(3,i,j,k));
return 0;
};
程序输出结果:
6