当前位置: 首页 > news >正文

建湖哪家专业做网站网站结构优化

建湖哪家专业做网站,网站结构优化,个人可以做社区网站,苏州网站开发公司电话文章目录初步示例函数解析最大值函数初步示例 stdarg.h提供了C语言对可变参数的支持&#xff0c;先举一个简短的例子 //testStdArg.c #include <stdarg.h> #include <stdio.h>void printIntList(int N, ...){va_list args; //存放...所代表的参数va_start(…

文章目录

    • 初步示例
    • 函数解析
    • 最大值函数

初步示例

stdarg.h提供了C语言对可变参数的支持,先举一个简短的例子

//testStdArg.c
#include <stdarg.h>
#include <stdio.h>void printIntList(int N, ...){va_list args;       //存放...所代表的参数va_start(args, N);  //初始化变量argsfor (int idx = 1; idx <= N; ++idx)printf("param %d: %d, ", idx, va_arg(args, int));printf("-----\n");va_end(args);
}int main(void)
{printIntList(4,1,2,3,4);printIntList(4,1,2,3);printIntList(3,1,2,3,4);
}

编译之后输出结果为

>gcc testStdArg.c
>a.exe
param 1: 1, param 2: 2, param 3: 3, param 4: 4, 
-----
param 1: 1, param 2: 2, param 3: 3, param 4: 4, 
-----
param 1: 1, param 2: 2, param 3: 3, 
-----

函数解析

其中,va_liststdarg.h中声明的数据类型,用以存放...所代表的参数,在printIntList中,定义了va_list类型的args用于存储变量。

stdarg.h中声明了三个函数,在上面的案例中都用上了,下面逐一解析

void va_start(va_list ap, last_arg)

  • 用于初始化ap变量,last_arg为最后一个参数的下标
  • 对于函数printIntList(4,1,2,3,4)而言,总共输入了5个参数,故其last_arg应该为4。

type va_arg(va_list ap, type)

  • 逐个检索函数参数列表中类型为type参数
  • printIntList中,va_arg被写在一个循环中,会逐个检索int型的参数
  • printIntList(4,1,2,3)中,由于N设为4,所以va_arg会检索4次,最后返回的4实际上是一个野指针。

void va_end(va_list ap)

  • 在参数调用结束之后,应该调用va_end来释放ap

最大值函数

有了这个函数,就可以实现多个参数求统计参数的功能,例如求最大值

//testMax
#include <stdarg.h>
#include <stdio.h>double getMax(int N, ...){va_list args;va_start(args, N);double val;double max = va_arg(args, double);for(int idx=2; idx <= N; ++idx){val = va_arg(args, double);max = max > val ? max : val;}va_end(args);return max;
}int main(void)
{double a = getMax(4,1.2,2.3,3.4,2.5);printf("%f", a);
}

测试结果如下

>gcc test.c 
>a.exe
3.400000

最后留一个小作业,如何用C语言实现一个参数个数可变的复杂一点的应用,比如求标准差σ=1N∑i=1N(xi−xˉ)2\sigma=\sqrt{\frac1N\sum^N_{i=1}(x_i-\bar x)^2}σ=N1i=1N(xixˉ)2

这里面的问题是,va_arg相当于是一个不断向前的迭代器,但并没有索引的功能,所以必须一次性取出,而不能跑多次循环。一个最直接的解决方案就是开一个数组或者链表,来缓存va_arg中的数据。

http://www.hkea.cn/news/563623/

相关文章:

  • 无锡市新吴区住房和建设交通局网站西安百度关键词包年
  • 网站平台方案设计seo上首页
  • 郑州做网站的联系方式搜狗友链交换
  • 一般建设一个网站多少钱怎么接广告赚钱
  • 计算机专业网站开发方向销售推广方案
  • 上海网站建设公司排名西安百度公司
  • 中国网网址是多少网站推广优化教程
  • 关于加强机关网站建设运营培训
  • dw做的网站怎么让别人看到如何建立一个网站
  • 保险网站建设优缺点seo代码优化步骤
  • 如何快速建网站百度电脑版入口
  • 山东省建设工程信息网站最近最新的新闻
  • 免费网站建设方案锦绣大地seo官网
  • 电子商务的网站建设牛排seo系统
  • 资源收费网站怎么做网站快速优化排名官网
  • 招标网哪个网站信息可靠百度站长工具网站
  • 郑州七七网站建设互联网推广公司
  • 佛山做外贸网站代理商百度收录技术
  • 公司网站建设需要什么今日热搜第一名
  • 烟台建设企业网站网站快速收录入口
  • 怎么做繁体字网站网络营销公司注册找哪家
  • 做ppt介绍网站吗网站搜索引擎优化工具
  • 深圳网站建设有没有市场百度搜索推广的五大优势
  • 网站建设好的图片百度互联网营销
  • 柳州网站制作公司seo优化什么意思
  • 网站建设做的好的公司淘宝关键词优化怎么弄
  • 手机网站用模版方象科技的企业愿景
  • 沈阳网站建设技术公司排名公司市场营销策划方案
  • 赣州网站建设怎样石家庄最新消息
  • 公司注册地址和经营地址不一致可以吗长春seo招聘