Страницы

Поиск по вопросам

воскресенье, 14 апреля 2019 г.

C++ Передача списка va_list в функцию

Подскажите, как реализовать функцию:
int test(...){ printf(...);}
То есть передать параметры va_list в следующую функцию.


Ответ

Просто так передать неопределённый список аргументов невозможно, в языке нет синтаксиса для этого. Однако проблему можно обойти, как указано здесь: функция, которой вы передаёте управление, должна иметь вариант, принимающий va_list
Для вашего случая, вы можете использовать vprintf
void test(char *format, ...) // должен быть хотя бы один аргумент { va_list args; va_start(args, format); vprintf(format, args); va_end(args); }

Комментариев нет:

Отправить комментарий