📜  门| GATE CS Mock 2018年|套装2 |第35章

📅  最后修改于: 2021-06-28 17:39:54             🧑  作者: Mango

后面的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;
}

(A) 3
(B) 5
(C) 6
(D) 10答案: (C)
说明:该函数接收可变数量的参数,因为第一个参数之后有三个点。 firs参数是所有参数(包括first)的计数。该函数主要返回所有剩余参数的总和。有关详细信息,请参见http://www.geeksforgeeks.org/how-to-count-variable-numbers-of-arguments-in-c。
这个问题的测验