stdarg.h — заголовочный файл стандартной библиотеки языка программирования Си, предоставляющий средства для перебора аргументов функции, количество и типы которых заранее не известны.
Содержимое stdarg.h
часто используют в функциях с произвольным количеством аргументов (к примеру, printf, scanf).
Заголовочный файл определяет тип va_list
и набор функций для операций над ним: va_start
, va_arg
, va_copy
(C99), va_end
.
#include <stdarg.h>
type va_arg(va_list ap, type);
void va_copy(va_list dest, va_list src);
void va_end(va_list ap);
void va_start(va_list ap, parmN);
Макрос va_start
служит для инициализации списка переменных аргументов и должен иметь соответствующий вызов va_end. Макрос va_arg
используется для получения доступа к очередному аргументу, а va_copy
- для копирования объектов типа va_list
.[1]