小记:C/C++中的变长参数

    我们知道可以在一个函数中定义参数个数不定的函数:
     void MyPrint(format, ...);  用三个点就行。

   然而,一个宏函数中怎么使用参数个数不定的功能呢?有两个办法:

  #define MyPrint(format, args...)  printf(format, args)
  #define MyPrint(format, ...) printf(format, __VA_ARGS__)

   GCC同时支持两种风格,而微软的CL.EXE只支持第二种。为兼容性考虑,大家都使用第二种格式吧。
 

你可能感兴趣的:(C++,c,C#,gcc)