Библиотека C - <stdarg.h>

В stdarg.h заголовок определяет тип переменной va_list и три макроса, которые можно использовать для получения аргументов функции, когда количество аргументов неизвестно, т.е. переменное количество аргументов.

Функция переменных аргументов определяется многоточием (, ...) в конце списка параметров.

Библиотечные переменные

Ниже приводится тип переменной, определенный в заголовке stdarg.h -

Sr. No. Переменная и описание
1

va_list

Этот тип подходит для хранения информации, необходимой для трех макросов. va_start(), va_arg() а также va_end().

Макросы библиотеки

Ниже приведены макросы, определенные в заголовке stdarg.h:

Sr. No. Макрос и описание
1 void va_start (va_list ap, last_arg)

Этот макрос инициализирует ap переменная, которая будет использоваться с va_arg а также va_endмакросы. Вlast_arg это последний известный фиксированный аргумент, передаваемый функции, то есть аргумент перед многоточием.

2 введите va_arg (va_list ap, тип)

Этот макрос извлекает следующий аргумент в списке параметров функции с типом type.

3 void va_end (va_list ap)

Этот макрос позволяет использовать функцию с переменными аргументами, которая использует va_startмакрос для возврата. Еслиva_end не вызывается перед возвратом из функции, результат не определен.