Variable Number of Arguments

11

For a function receives variable number of arguments it is necessary that the function 

should receive at least one fixed argument.

A. True
B. False

12

A function that receives variable number of arguments should use va_arg() to extract 

arguments from the variable argument list.

A. True
B. False

13

In a function that receives variable number of arguments the fixed arguments passed to 

the function can be at the end of argument list.

A. True
B. False

14

The macro va_arg is used to extract an argument from the variable argument list and 

advance the pointer to the next argument.

A. True
B. False

15

Point out the error in the following program.

#include<stdio.h>
#include<stdarg.h>
void varfun(int n, ...);

int main()
{
    varfun(3, 7, -11.2, 0.66);
    return 0;
}
void varfun(int n, ...)
{
    float *ptr;
    int num;
    va_start(ptr, n);
    num = va_arg(ptr, int);
    printf("%d", num);
}
A. Error: too many parameters
B. Error: invalid access to list member
C. Error: ptr must be type of va_list
D. No error