Contents|Index|Previous|Next

va_arg
[extract value from argument list]

    SYNOPSIS
    #include <stdarg.h>
    type va_arg(va_list ap, type);

DESCRIPTION
va_arg returns the next unprocessed value from a variable argument list, ap (which you must previously create with va_start). Specify the type for the value as the second parameter to the macro, type.

You may pass a va_list object, ap, to a subfunction, and use va_arg from the subfunction rather than from the function actually declared with an ellipsis in the header; however, in that case you may only use va_arg from the subfunction. ANSI C does not permit extracting successive values from a single variable-argument list from different levels of the calling stack.

There is no mechanism for testing whether there is actually a next argument available; you might instead pass an argument count (or some other data that implies an argument count) as one of the fixed arguments in your function call.

RETURNS
va_arg returns the next argument, an object of type, type.

COMPLIANCE
ANSI C requires va_arg.