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

企业网站建设价格百度市场应用官方app

企业网站建设价格,百度市场应用官方app,不用ftp可以做网站吗,synology做网站服务器文章目录初步示例函数解析最大值函数初步示例 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.yidumall.com/news/56267.html

相关文章:

  • 东莞交易中心杭州seo网站排名
  • 做网站主播要什么条件软文营销的写作技巧有哪些
  • 动态网站开发技术哪几种杭州百度快照推广
  • 做网站和推广需要多少钱网站平台推广
  • 哪些网站可以做付费视频网络营销学什么内容
  • 基于jsp的网站开发开题报告百度上做推广怎么收费
  • 博客网站需要的功能优化关键词的方法
  • 骏驰网站开发百度q3财报2022
  • 福建省做鞋批发网站百度搜索引擎的原理
  • 广州做护肤品的网站百度seo效果怎么样
  • 武汉建站软件深圳百度开户
  • 寮步网站建设极致发烧网站收录提交入口网址
  • 体检网站源码新媒体运营师证书
  • 专门做日租房的网站怎么建自己的网站?
  • 网站建设公司排名微信群二维码推广平台
  • 介绍做素食的网站百度首页关键词推广
  • 怎么找平台推广自己的产品seo推广主要做什么
  • 如何在微信公众号内部做网站信阳百度推广公司电话
  • 一级域名的网站制作汕头seo推广外包
  • java做的k线图网站源码下载网站seo视频狼雨seo教程
  • 新网站的建设方案免费软文推广平台
  • 学平面设计做网站seo怎么赚钱
  • wordpress清理插件抖音矩阵排名软件seo
  • 那有名网站是php做的无限制搜索引擎排名
  • 电子商务网站规划从哪些方面入手职业技术培训
  • 网站维护有哪些企业简单网站建设优化推广
  • 口腔医院网站做优化衡水网站seo
  • 企业建站服务器2024政治时政热点
  • 帝国建站模板蚁坊软件舆情监测系统
  • 工作室建设方案seo网站排名优化公司哪家好