Вложенные вызовы функций с переменным числом параметров
Подскажите как бороться с этим эффектом.
void funcA(char *S, void *P, ...)
{
va_list argptr;
va_start(argptr, FirstPar);
funcB(S, P, argptr);
va_end(argptr)
};
void funcB(char *S, void *P, va_list argptr)
{
funcC(S, P, argptr);
};
void funcC(char *S, void *P, va_list argptr)
{
//Обработка переданных параметров:
//...
};