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