`
8366
  • 浏览: 799095 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

linux C语言系列--第五讲--函数

阅读更多

可变参数列表:

 

  例子:写一个函数,求给定所有参数的平均值,函数的参数的个数是不定的

 

[root@xhu-vm test]# more test6.c 
#include <stdio.h>
#include <stdarg.h>

float average(int n_values,...)
{
        va_list var_arg;
        int count;
        float sum=0;

        va_start(var_arg,n_values);

        for(count=0;count<n_values;count++)
        {
                sum+=va_arg(var_arg,int);
        }

        va_end(var_arg);
        return sum/n_values;
}

int main()
{
        printf("%f\n",average(4,1,2,3,4));
}

[root@xhu-vm test]# 

 编译运行:

 

[root@xhu-vm test]# gcc -g test6.c -o test6
[root@xhu-vm test]# ./test6
2.500000
[root@xhu-vm test]# 
 

 

 

分享到:
评论

相关推荐

    Linux系统纯C语言开发网络游戏存储引擎

    资源名称:Linux系统纯C语言开发网络游戏存储引擎 教程内容:[第1节] 1-1-1为公司搭建Linux下的c开发环境[第2节] 1-1-2为公司搭建Linux下的c开发环境[第3节] 2-1-1C语言数据类型[第4节] 2-1-2数据的快速引用[第5节]...

    Linux 下C语言原理生动学习 -- Hello World的秘密

    像机器一样思考,像婴儿一样体验! 这个PPT会让你对C语言的理解有一个质的提升,但这还仅仅是一个入门,并不是全部。 01.序言 02.Hello world的回忆 ...12.秘密十:main函数不是第一个执行的函数 (1-4)

    Linux-Socket-服务器编程实例.pptx

    #include&lt;string.h&gt; string.h是预先定义好的函数库头文件,里面定义了一些字符串函数,如bzero等,添加这个头文件后才可以使用和字符串相关的操作函数 4 Linux-Socket-服务器编程实例全文共13页,当前为第5页。...

    嵌入式Linux C语言应用程序设计

    其中pointer1.c是6.2.2的第一个源代码,pointer2.c是6.2.2的第二个源代码,pointer3.c是6.2.2的第三个源代码,pointer4.c是6.2.3的第一个源代码,pointer5.c是6.2.3的第二个源代码,pointer6.c是6.2.3的第三个源代码...

    程序设计入门—C语言(完)-浙江大学-翁恺 视频.txt

    C语言是古老而长青的编程语言,它具备了现代程序设计的基础要求,它的语法是很多其他编程语言的基础,在系统程序、嵌入式系统等领域依然是无可替代的编程语言,在各类编程语言排行榜上常年占据前两名的位置。...

    嵌入式Linux C编程入门(第2版) PPT

    第5章 嵌入式linux c语言基础——控制语句及函数 138 5.1 嵌入式linux c语言程序结构概述 138 5.1.1 嵌入式linux c语言3种程序结构 138 5.1.2 嵌入式linux c语言基本语句 139 5.2 选择语句 142 5.2.1...

    C基础(主要)、ubuntu基础操作和介绍、linux编程基础

    网盘链接:https://pan.baidu.com/s/1Ij7KN5oZM5mc8FOyyyamTA 01-C基础第01天(linux...01-C基础第07天(字符串处理函数) 01-C基础第08天(指针上) 01-C基础第O9天(指针下) 01-C基础第10天(内存结构) 课程资料 等......

    Linux基础教程视频版(很详细)

    第5章 基本数据类型 第5章 基本数据类型实验 第6章 顺序程序设计实验 第7章 选择程序设计 第7章 选择程序设计实验 第8章 循环结构程序设计 第8章 循环结构程序设计实验 第9章 数组 第9章 数组及字符串实验 第10章 ...

    linux C编程实战

     第5章 C语言预处理、结构体和make的使用  第二篇 Linux系统编程  第6章 文件操作   第7章 进程控制   第8章 线程控制   第9章 信号及信号处理   第10章 进程间通信  第三篇 Linux网络和图形...

    嵌入式高级C语言编程讲义文档

    第 1 章 Linux 基础之命令 第 2 章 c 数据类型及语句 第 3 章 数组 第 4 章 函数 第 5 章 预处理、动态库、静态库 第 6 章 指针 第 7 章 动态内存申请 第 8 章 字符串处理函数 第 9 章 结构体 第 10 章 ...

    Linux从零入门实战-2019年七月Z线.txt

    第五讲 Linux开发基础 知识点1: 用C语言写一个hello word程序 知识点2: GCC与GDB 简介 知识点3: 工程文件Makefile 知识点4: 编译安装软件,找一个软件 实战项目: C语言实现一个简单的命令行系统 第三阶段 实战...

    C语言_经典教材一本全+函数库

    C语言入门 1. 程序的基本概念 1. 程序和编程语言 2. 自然语言和形式语言 3. 程序的调试 4. 第一个程序 2. 常量、变量和表达式 1. 继续Hello World 2. 常量 3. 变量 4. 赋值 5. 表达式 ...

    C--linux应用程序开发指南.rar

    第一部分介绍Linux GUI编程架构以及编程基础知识,第二部分介绍Linux 编程常用C语言函数库glibc、构件库Gtk+、Gnome,第三部分介绍Linux下的GUI生成器Glade,第四部分介绍Linux编程调试工具gdb及xxgdb。第五部分包括...

    Linux C程序设计大全

    第5章 C语言的高级技术 第2篇 C语言开发环境 第6章 vi与vim编辑器 第7章 gcc编译器 第8章 makefile 第9章 gdb 第3篇 Linux进程操作 第10章 进程环境 第11章 进程控制 第12章 时间和日历历程 第13章 信号及信号处理 ...

    Linux内核情景分析

    第5章 文件系统 5.1 概述 5. 2 从路径名到目标节点 5. 3 访问权限与文件安全性 5. 4 文件系统的安装和拆卸 5.5 文件的打开与关闭 5. 6 文件的写与读 5.7 其他文件操作 5. 8 特殊文件系统/proc 第6章 传统的Unix...

    linux C编程实战 电子书part5

     第5章 C语言预处理、结构体和make的使用  第二篇 Linux系统编程  第6章 文件操作   第7章 进程控制   第8章 线程控制   第9章 信号及信号处理   第10章 进程间通信  第三篇 Linux网络和图形...

    Linux系统下C程序开发详解 电子教案.rar.

    全书共22章,从Linux系统安装开始,讲解了Linux常用命令、Shell编程、C语言基础、指针与函数、C程序网络编程、图形界面程序设计等内容。书中通过大量的实例来讲解知识要点,读者可以通过这些实例和练习对C程序有一个...

    Linux内核情景分析(非扫描版)

    第5章 文件系统 5.1 概述 5. 2 从路径名到目标节点 5. 3 访问权限与文件安全性 5. 4 文件系统的安装和拆卸 5.5 文件的打开与关闭 5. 6 文件的写与读 5.7 其他文件操作 5. 8 特殊文件系统/proc 第6章 传统的Unix...

    C语言的双链表

    //返回外部结构体的地址,第一个参数是节点地址,第二个参数是外部结构体的类型名,第三个参数是节点在外部结构体中的成员名 #define list_entry(ptr, type, member) ((type *)((char *)(ptr)-(unsigned long)(&...

    Linux详细教程和用户接口(GUI)编程技术

    第一部分介绍Linux GUI编程架构以及编程基础知识,第二部分介绍Linux 编程常用C语言函数库glibc、构件库Gtk+、Gnome,第三部分介绍Linux下的GUI生成器Glade,第四部分介绍Linux编程调试工具gdb及xxgdb。第五部分包括...

Global site tag (gtag.js) - Google Analytics