码迷,mamicode.com
首页 > 编程语言 > 详细

C语言 可变参数的用法

时间:2017-03-01 00:43:20      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:va_arg   ++   class   tar   i++   value   stdio.h   c语言   函数   

问题:

设计一个可变的函数:int add(int num,...),将除num之外的其他参数进行累加。

 1 #include <stdio.h>
 2 #include <stdarg.h>    //相关函数都包含在这个头文件当中
 3 
 4 int add(int num,...)
 5 {
 6     va_list arg_ptr;    
 7     int nArgValue = 0;
 8     int sum = 0;
 9     va_start(arg_ptr, num);
10     for (int i=0; i<num; i++)
11     {
12         nArgValue=va_arg(arg_ptr, int);
13         sum+=nArgValue;
14     }
15     va_end(arg_ptr);
16 
17     return sum;
18 }
19 
20 int main(int argc, char **argv)
21 {
22     printf("%d\n", add(4,11,2,55,1));
23     return 0;
24 }

显示结果

69

使用顺序:

va_list arg_ptr;

va_start(arg_ptr,num);

va_arg(arg_ptr, int);

va_end(arg_ptr);

C语言 可变参数的用法

标签:va_arg   ++   class   tar   i++   value   stdio.h   c语言   函数   

原文地址:http://www.cnblogs.com/dengnilikai/p/6481731.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!