The GNU C Library - Variable Arguments Input

Node: Variable Arguments Input Prev: Formatted Input Functions Up: Formatted Input

Variable Arguments Input Functions

The functions vscanf and friends are provided so that you can define your own variadic scanf -like functions that make use of the same internals as the built-in formatted output functions. These functions are analogous to the vprintf series of output functions. See Variable Arguments Output, for important information on how to use them.

Portability Note: The functions listed in this section are GNU extensions.

Function int vscanf (const char *template, va_list ap)
This function is similar to scanf except that, instead of taking a variable number of arguments directly, it takes an argument list pointer ap of type va_list (see Variadic Functions).

Function int vfscanf (FILE *stream, const char *template, va_list ap)
This is the equivalent of fscanf with the variable argument list specified directly as for vscanf .

Function int vsscanf (const char *s, const char *template, va_list ap)
This is the equivalent of sscanf with the variable argument list specified directly as for vscanf .

In GNU C, there is a special construct you can use to let the compiler know that a function uses a scanf -style format string. Then it can check the number and types of arguments in each call to the function, and warn you when they do not match the format string. See Declaring Attributes of Functions, for details.


Up: Formatted Input