`
8366
  • 浏览: 809352 次
  • 性别: 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]# 
 

 

 

分享到:
评论

相关推荐

    Hmac算法c语言实现

    在C语言中,你可以使用开源库如OpenSSL提供的`EVP_DigestInit`, `EVP_DigestUpdate`和`EVP_DigestFinal`系列函数来实现SHA-1、SHA-256等哈希函数。 2. **预处理密钥**:HMAC算法要求密钥首先进行处理,以便适应所选...

    Linux C语言函数大全(htm 版,比较全)

    C语言函数大全是学习和参考C语言编程的关键资源,它通常包含了C语言标准库中的所有函数,以及一些常用的第三方库函数。这份"Linux C语言函数大全(htm 版,比较全)"很可能是一个HTML文档,提供了一个方便的在线查阅...

    arm-xilinx-linux-gnueabi-2011.09-50

    2. **Glibc**:GNU C库,提供了许多C语言编程所需的函数,是Linux系统的基础。 3. **Binutils**:包括汇编器、链接器和二进制工具,用于处理目标代码和对象文件。 4. **Make工具**:用于自动化构建过程。 5. **...

    Linux C语言函数大全

    本资源"Linux C语言函数大全"很可能是一本详细介绍了C语言在Linux环境下的各种函数用法的书籍或文档集合,名为"book180"。在Linux环境下,C语言的函数库尤其丰富,包括标准C库、POSIX扩展以及Linux特有的系统调用等...

    linux下的c语言-网络-网络编程面试题[文].pdf

    在Linux环境下进行C语言编程,特别是涉及到网络编程时,我们需要理解和掌握一些关键概念和技术。以下是一些相关的知识点: 1. **字符串与数组的区别**: - `sizeof(str)` 在这里返回的是指针的大小,即32位系统下4...

    C语言进阶-第二讲C语言复习.pdf

    ### C语言进阶——第二讲C语言复习 #### C语言概览 C语言是一种广泛使用的通用编程语言,尤其适用于系统编程、嵌入式系统开发等领域。本次讲座将围绕C语言的关键概念和技术要点展开讨论。 #### C语言的历史背景 ...

    嵌入式高级C语言进阶-第四讲源码

    在本资源中,我们主要关注的是“嵌入式高级C语言进阶”的第四讲源码,这来源于东南大学集成电路研究中心凌明老师的课程。这门课程旨在深入探讨在嵌入式系统中如何更有效地使用C语言进行开发,尤其针对内存管理和优化...

    Linux C语言的配置文件操作库

    在C语言中,没有内置的函数可以直接处理这些文件,因此需要借助第三方库来实现。"Linux C语言的配置文件操作库"可能包括如Glib的gconf、libconfig或inih等库,它们提供了便捷的API,使开发者能够轻松地与配置文件...

    C语言进阶-第三讲编译汇编调试.pdf

    ### C语言进阶——第三讲:编译、汇编与调试 #### 一、面向嵌入式系统的软件开发环境 面向嵌入式系统的软件开发环境通常包括以下几部分: 1. **编译器**:负责将高级语言如C/C++等源代码翻译成汇编语言。 2. **...

    C语言基础-开发环境及流程演示文稿

    #### 五、C语言编程步骤 1. **编辑源代码**:在文本编辑器或IDE中编写C语言源代码。 2. **编译源文件**:使用编译器(如GCC、Clang等)将源代码编译成目标文件(.obj)。 3. **链接生成应用程序**:将目标文件与...

    C语言进阶-第六讲中断与驱动.pdf

    ### C语言进阶—第六讲:中断与驱动 #### 核心知识点概览 1. **中断的概念及其分类** 2. **中断处理的过程** 3. **中断的重要性** 4. **调用栈与中断栈的区别** 5. **C语言中的中断处理** 6. **优化中断处理程序的...

    C语言课件-谭浩强版本

    6. **第5章 循环语句**:C语言的循环结构有for、while和do-while,它们用于重复执行一段代码直到满足特定条件。本章会讲解各种循环语句的使用,以及break和continue语句的控制作用。 7. **第15章 预处理与复杂函数...

    Linux下C语言编程教程

    #### 第五章 信号处理 - **信号简介**: 介绍信号的基本概念和用途。 - **信号发送**: 如何使用`kill()`函数来发送信号。 - **信号捕获**: 使用`signal()`函数来捕获信号,并自定义信号处理函数。 - **异步信号处理**...

    ActivePerl-5.24.3.2404-x86_64-linux-glibc-2.15-404865.tar.gz

    glibc是Linux操作系统上广泛使用的C库,包含了C语言编程所需的各种函数。这里的"404865"可能是一个特定的构建ID或者版本标识。 标签"ActivePerl-5.24."是这个发布版本的简写,强调了它是ActivePerl的5.24系列。 ...

    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)

Global site tag (gtag.js) - Google Analytics