C Macro Va_Arg
## C Library macro β va_arg()
`va_arg()` The macro used to retrieve the next parameter from a variable argument list.
### Syntax
```c
va_arg(va_list ap, type)
### Parameter
* `ap`: a `va_list` Variable pointing to the current parameter position.
* `type`: The type of the parameter to be retrieved.
### ReturnValue
Return `type` The next parameter of the specified type.
### Instance
The following example demonstrates how to use `va_arg()` Macro:
```c
#include
#include
double average(int num, ...)
{
va_list valist;
double sum = 0.0;
int i;
va_start(valist, num);
for (i = 0; i < num; i++)
{
sum += va_arg(valist, double);
}
va_end(valist);
return sum / num;
}
int main()
{
double avg;
avg = average(4, 12.2, 14.5, 18.9, 19.7);
printf("Average of 4 numbers: %fn", avg);
avg = average(5, 12.2, 14.5, 18.9, 19.7, 21.3);
printf("Average of 5 numbers: %fn", avg);
return 0;
}
### Output result
Average of 4 numbers: 16.350000
Average of 5 numbers: 17.040000
YouTip