可变参数,即参数的个数是动态变化的, 可多可少。

1. 可变参数;

  可变参数一般采用”..."表示,用在宏上表示变参宏, 如:

#define  WriteLine(format,...)   prifntf(format, __VA_ARGS__)

从上可以看出, 宏中"..."可以使用__VA_ARGS__来表示;

2. va_list实现函数可变参(配合vsprintf);

在函数也可以实现可变参数, 在函数内可以使用va_list, va_start, va_arg, va_end, 配合vsprintf。

例如:

void   test(const char *pFromat, ...)
{
     va_list st;
     va_start(st,pFormat);
     char  buffer[1000] ={0};
     vsprintf(buffer, pFormat, st) ;
     va_end(st);
}    

 

相关文章:

  • 2022-02-05
  • 2021-11-24
  • 2022-03-04
  • 2022-02-12
  • 2021-10-22
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-06-03
  • 2021-05-11
  • 2021-11-17
  • 2021-12-23
  • 2022-02-18
  • 2021-07-09
相关资源
相似解决方案