请问如何将va_list变参透明的传递到下一个函数?
如
int vp2(char *pFormat ,...)
{
va_list args;
va_start (args, pFormat);
.....
va_end (args);
}
int vp1(char *pFormat ,...)
{
vp2(????); //}
见"????"处,这是两个对变参进行格式化的函数,但是两个函数里针对变参各有一些不同的处理,调用层次是vp1调用vp2,如何将传进vp1的格式和可变参数传递到vp2里呢。我试过这样不成功。一时没查到资料该怎么办,后来就干脆先用一个buffer格式化了数据再传了。请指点,谢谢。
代码:
int vp1(char *pFormat ,...)
{
va_list args;
va_start (args, pFormat);
vp2(args);
va_end (args);
}
我有想过用va_arg,可是好象不是很方便。有没有高人给出一个有效的解决方法?谢谢