以下 C – 代码的输出是什么?
#include
#include
int fun(int n, ...)
{
int i, j = 1, val = 0;
va_list p;
va_start(p, n);
for (; j < n; ++j)
{
i = va_arg(p, int);
val += i;
}
va_end(p);
return val;
}
int main()
{
printf("%d\n", fun(4, 1, 2, 3));
return 0;
}
(一) 3
(乙) 5
(三) 6
(四) 10答案: (C)
说明:该函数接收可变数量的参数,因为第一个参数后面有三个点。第一个参数是所有参数的计数,包括第一个。该函数主要返回所有剩余参数的总和。有关详细信息,请参阅 http://www.geeksforgeeks.org/how-to-count-variable-numbers-of-arguments-in-c。
这个问题的测验