zoukankan      html  css  js  c++  java
  • 第 16 章 C 预处理器和 C 库(可变参数:stdarg.h)

     1 /*-------------------------------------------------
     2     varargs.c -- use variable number of arguments
     3 -------------------------------------------------*/
     4 
     5 #include <stdio.h>
     6 #include <stdarg.h>
     7 
     8 double sum(int, ...);
     9 
    10 int main()
    11 {
    12     double s, t;
    13 
    14     s = sum(3, 1.1, 2.5, 13.3);
    15     t = sum(6, 1.1, 2.1, 13.1, 4.1, 5.1, 6.1);
    16 
    17     printf("return value for sum(3, 1.1, 2.5, 13.3):                %g
    ", s);
    18     printf("return value for sum(6, 1.1, 2.1, 13.1, 4.1, 5.1, 6.1): %g
    ", t);
    19 
    20     return 0;
    21 }
    22 
    23 double sum(int lim, ...)
    24 {
    25     va_list ap;                            //声明一个对象储存参数
    26     double tot = 0;
    27 
    28     va_start(ap, lim);                    //把 ap 初始化为参数列表
    29 
    30     for (int i = 0; i != lim; ++i)
    31         tot += va_arg(ap, double);        //访问参数列表的每一项
    32 
    33     va_end(ap);                            //清理工作
    34 
    35     return tot;
    36 }
    varargs.c

  • 相关阅读:
    Oracle 分析函数
    Oracle 增加修改删除字段
    Oracle 重置序列
    End2EndIT
    Hyperledger Fabric SDK use case 1
    云计算中8项核心技术
    Cloud
    JVM Guide
    微信公众平台PHP开发
    在Linux系统环境下修改MySQL的root密码
  • 原文地址:https://www.cnblogs.com/web1013/p/9260984.html
Copyright © 2011-2022 走看看