1 前言
在编程过程中,有时会遇到需要定义参数数量不固定的函数的情况。
C语言提供了一种灵活的解决方案:变参函数。这种函数能够根据实际调用时的需求,接受任意数量的参数。
本文将通过具体的实例程序,介绍如何定义和使用变参数函数,并分析其原理。
2 实例
2.1实例程序
下面这段代码实现了一个名为 average 的可变参数函数,用于计算平均值。该函数接受一个固定参数 num,指示将要计算平均的数值个数,随后跟随着省略号 …,表示其后跟随的是不定数量的数值参数。
#include <stdio.h>
#include <stdarg.h>
double average(int num,...)
{
va_list valist;
double sum = 0.0;
va_start(valist, num); //为 num 个参数初始化 valist
/* 访问所有赋给 valist 的参数 */
for (int i = 0; i < num; i++)
{
sum += va_arg(valist,