如何实现参数个可变的函数.docVIP

  • 1
  • 0
  • 约1.02万字
  • 约 13页
  • 2019-05-07 发布于江苏
  • 举报
如何实现参数个数可变的函数 参数个数不定的函数,最频繁使用的就是printf()与scanf()。其实,我们也可以自己实现这样的功能,首先看一个例子: #include stdio.h #include stdarg.h int Sum(int first, int second, ...) { ????? int sum = 0, t = first; ????? va_list vl; ????? va_start(vl, first); ????? while (t != -1) ????? { ???????????? sum += t; ???????????? t = va_arg(vl, int);//将当前参数转换为int类型 ????? } ????? va_end(vl); ????? return sum; } int main(int argc, char* argv[]) { ????? printf(The sum is %d\n, Sum(30, 20, 10, -1));//-1是参数结束标志 ????? return 0; } 在上面的例子中,实现了一个参数个数不定的求int型和的函数Sum()。函数中一开始定义了一个va_list型变量vl,该变量用来访问可变参数,实际上就是指针,接着使用va_start使vl指向第一个参数,然后再使用va_ar

文档评论(0)

1亿VIP精品文档

相关文档