Variadic Function
Template
#include <stdio.h>
#include <stdarg.h>
int variadic_addition (int count,...)
{
va_list args;
int i, sum;
va_start (args, count); /* Save arguments in list. */
sum = 0;
for (i = 0; i < count; i++)
sum += va_arg (args, int); /* Get the next argument value. */
va_end (args); /* Stop traversal. */
return sum;
}
int main(){
// call 1: 4 arguments
printf("Sum: %d\n", variadic_addition(3, 10, 20, 30));
//call 2: 6 arguments
printf("Sum: %d\n", variadic_addition(5, 10, 20, 30, 40, 50));
return 0;
}
Last updated