C语言开发示例:36. 可变参数

创建日期:2024-07-10 11:47:33
更新日期:2025-02-01 20:08:15

stdarg.c

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

double average(double v1, double v2, ...)
{
    va_list parg;
    double sum = v1 + v2;
    double value = 0.0;
    int count = 2;

    va_start(parg, v2);
    while ((value = va_arg(parg, double)) != 0.0)
    {
        sum += value;
        ++count;
    }
    va_end(parg);
    return sum / count;
}

int main()
{
    double ave = average(1.0, 2.0, 3.0, 4.0, 5.0, 0.0);
    printf("average: %f\n", ave);
}
转载请注明转自www.hylab.cn,原文地址:C语言开发示例:36. 可变参数