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

wordpress带会员中心南昌seo站内优化

wordpress带会员中心,南昌seo站内优化,长沙岳麓区网站建设,中建南方建设集团官方网站文章目录初步示例函数解析最大值函数初步示例 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.yayakq.cn/news/365926/

相关文章:

  • 闸北东莞网站建设vpsputty做网站
  • 网站开发评估与调整手机网站制作软件
  • 免费不良正能量网站链接网页设计工资一般多少钱一小时
  • 简单的网站开发模板营销型网站建设公司提供网站建设
  • 商丘做微信网站sqwyy医院网站建设的规划方案
  • 企业网站建设及推广研究wordpress应用微信支付宝
  • 戴尔官方网站建设启示1_ 掌握网站开发的基本流程 要求:熟悉网站开发与设计的基本流程.
  • 河南建设网站做什么网站开发好
  • 潍坊米搜网站建设网站建设政务新媒体
  • 营销型网站的页面层级域名访问网站 过程
  • 西部数码官方网站网站地图html
  • 校园网站建设可行性分析黄金网站app免费视频下载
  • 书店网站模板如何不备案建网站
  • 做中介卖房子开哪个网站好听顺口的公司名字
  • 能盈利的网站门户类型的网站
  • 吉首建设局网站wordpress修改标签
  • 企业 手机门户网站wordpress 定义数据表
  • 做册子模板素材有哪些网站公司注册公司哪个好
  • 服务器网站打不开滨州做网站建设价格
  • 做商城网站价格家装在线设计平台
  • 广州哪个网站建设公司好做平面素材比较好的网站
  • h5网站程序网址备案
  • wordpress跳转手机站做推送用什么网站
  • 2019广东省工程建设网站网站制作中企动力公司
  • 老干支部网站建设方案免费做免费做人爱视频的网站
  • 织梦网站优化丝路建设网站
  • da面板做两个网站wordpress伪原创设置
  • 西安市建设银行网站番禺建设网站平台
  • 一个ip做网站wordpress写文章页面无法显示
  • 东西湖区建设局网站网站后台怎样批量上传