Linux C:函数的可变参数

一、代码

主要使用:

    #include <stdarg.h>

    ...

    va_list

    void va_start(va_list ap, last);

    type va_arg(va_list ap, type);

    void va_end(va_list ap);

第一个参数c,用来指定参数的个数。

#include <stdio.h>
#include <stdarg.h>

int sum(int c, ...) {
        int i = c;
        int sum = 0;

        va_list ap;
        va_start(ap, c);

        printf("c:%d\n",c);
        while (i>0) {
                sum += va_arg(ap,int);
                i--;
        }

        va_end(ap);

        return sum;
}

int main(int argc, char* argv[])
{
        printf("sum:%d\n", sum(6, 1,2,3,4,5,10));
        return 0;
}

二、运行结果


扫描二维码关注公众号,回复: 3169827 查看本文章

猜你喜欢

转载自blog.csdn.net/kanguolaikanguolaik/article/details/79867978