可变参数的传递问题

 
考虑如下问题
假设有两个不定参数的函数
void proc_one(int x, ...)
void proc_two(...)
假设在proc_one中需要将其不定参数部分传递给proc_two中呢?
搜索了下,并没有透明的方法,只能再声明一个处理函数
void proc_two (va_list ap)
为了减少冗余代码,void proc_two(...)的实现为
void proc_two(...)
{
  va_list ap;
  va_start(ap, fmt);
   proc_two(ap);
  va_end(ap);
}
 
这也是为什么printf有vprintf版本的原因吧。
posted @ 2014-02-27 18:27  westfly  阅读(1075)  评论(0编辑  收藏  举报