变量函数 - 如何获取var_args的数量?

时间:2013-02-23 03:38:48

标签: c variadic-functions

这可以完成吗?例如,有某种va_num_args吗?

基本上,我是以prinf()方式在串口上记录事件,采用格式字符串,可选地,还有一些参数。我想知道是否存在任何此类选项参数。

例如,我可以区分Trace("No paramters here");Trace("forty two = %d", 43 - 1);吗?

1 个答案:

答案 0 :(得分:5)

不,但可以使用以下方法:

  • 从格式字符串(如printf)推断参数cound。
  • 使用sentinel value表示最后一个参数。
  • 提供专用的计数参数。