提取未确定数目的参数

阅读更多
提取未确定数目的参数
在标准库的中专门提供一组宏来访问它们.
例:
void error(int severity ...)
{
 va_list ap;
 //用va_start初始化ap,第二个参数是函数的最后一个有名的形式参数的名字
 va_start(ap,severity);
 for(;;){
  //宏va_arg是按顺序提取各个无名参数,第二个参数是假定的该无名参数的类型
  chap* p = va_arg(ap,char*);
  if(p==0)break;
  cerr<

<<' ';
 }
 va_end(ap);//调用va_start后必须用va_end退出
 cerr<<'n';
 if(severity) exit(severity);
}

 

你可能感兴趣的:(提取未确定数目的参数)