C和指针之函数之求参数列表中的最大值
【摘要】 1、问题
*编写一个叫max_list函数,它用于检查任意数目的整形参数
*并返回他们中的最大值,参数列表必须以一个负数结尾,提
*示列表的结束
2、代码实现
#include <...
1、问题
*编写一个叫max_list函数,它用于检查任意数目的整形参数
*并返回他们中的最大值,参数列表必须以一个负数结尾,提
*示列表的结束
*并返回他们中的最大值,参数列表必须以一个负数结尾,提
*示列表的结束
2、代码实现
-
#include <stdio.h>
-
#include <stdarg.h>
-
/**
-
*编写一个叫max_list函数,它用于检查任意数目的整形参数
-
*并返回他们中的最大值,参数列表必须以一个负数结尾,提
-
*示列表的结束
-
*/
-
int max_arg(int first, ...)
-
{
-
//指向参数栈
-
va_list va_arg;
-
//初始化
-
va_start(va_arg, first);
-
//获取第一个参数的值
-
int value = va_arg(va_arg, int);
-
int max = first;
-
while (value > 0)
-
{
-
if (value > max)
-
max = value;
-
value = va_arg(va_arg, int);
-
}
-
va_end(va_arg);
-
return max;
-
}
-
-
-
-
int main()
-
{
-
int max = max_arg(2, 3, 5, 4, 1, -1, 7);
-
printf("max_arg is %d\n", max);
-
}
3、运行结果
-
1111deMacBook-Pro:dabian a1111$ gcc -g max_list.c -o max_list
-
1111deMacBook-Pro:dabian a1111$ ./max_list
-
max_arg is 5
文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。
原文链接:chenyu.blog.csdn.net/article/details/78484085
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)