第 16 章 C 预处理器和 C 库(可变参数:stdarg.h)
Posted web1013
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第 16 章 C 预处理器和 C 库(可变参数:stdarg.h)相关的知识,希望对你有一定的参考价值。
1 /*------------------------------------------------- 2 varargs.c -- use variable number of arguments 3 -------------------------------------------------*/ 4 5 #include <stdio.h> 6 #include <stdarg.h> 7 8 double sum(int, ...); 9 10 int main() 11 { 12 double s, t; 13 14 s = sum(3, 1.1, 2.5, 13.3); 15 t = sum(6, 1.1, 2.1, 13.1, 4.1, 5.1, 6.1); 16 17 printf("return value for sum(3, 1.1, 2.5, 13.3): %g ", s); 18 printf("return value for sum(6, 1.1, 2.1, 13.1, 4.1, 5.1, 6.1): %g ", t); 19 20 return 0; 21 } 22 23 double sum(int lim, ...) 24 { 25 va_list ap; //声明一个对象储存参数 26 double tot = 0; 27 28 va_start(ap, lim); //把 ap 初始化为参数列表 29 30 for (int i = 0; i != lim; ++i) 31 tot += va_arg(ap, double); //访问参数列表的每一项 32 33 va_end(ap); //清理工作 34 35 return tot; 36 }
以上是关于第 16 章 C 预处理器和 C 库(可变参数:stdarg.h)的主要内容,如果未能解决你的问题,请参考以下文章