Подскажите, как реализовать функцию:
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);
}
Или макросом:
#define prn(A,...) printf(A,__VA_ARGS__)
иногда так проще, особенно если надо добавить к VA_ARGS дополнительные аргументы.Но по уму все же по изучать VA_* интерфейс.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости