美文网首页C算法&面试题C语言
【C编程】变参函数学习!

【C编程】变参函数学习!

作者: 逐风墨客 | 来源:发表于2020-05-17 00:02 被阅读0次
/*=========================================
* Copyright (c) 2020, 逐风墨客
* All rights reserved.
* 
* 文件名称:study_varpara.c
* 功能描述:把传入的多个参数正序、倒序显示
* 所用函数:void show_parachage(int n, ...)
* 返回值:无
=========================================*/

#include <stdio.h>
#include <stdlib.h> 
#include <stdarg.h>

int mian(void)
{ 
  void show_parachange(int n, ...);

  system("clear");
  show_parachange(6, 3, 5, 6, 3, 77, 89);
  show_parachange(4, 3, 5, 6, 3, 77, 89);
  show_parachange(0, 3, 5, 6, 3, 77, 89);
  show_parachange(-2, 3, 5, 6, 3, 77, 89);

  return 0;  
}
void show_parachange(int n, ...)
{
  int i; 
  int arg;
  va_list ap;

  printf("\nThere is %d parameters in total!\n", n);

  va_start(ap, n);
  printf("direct : ");
  for (i=0, i<n, i++)
  {
    arg = va_arg(ap, int);
    printf("%d", arg);
  }
  va_end(ap);
  printf("\n");

  va_start(ap, n);
  ap = (int *)ap + sizeof(va_list) + 1;
  printf("reverse : "); 
  for (i=0, i<n, i++)
  {
    arg = va_arg(ap, int);
    printf("%d", arg);
    ap = (int *)ap + 2;
  }
  va_end(ap);
  printf("\n");
}

程序运行结果:


程序运行结果.png

相关文章

  • 函数变参的使用

    介绍C/C++,java,和go语言对函数变参的使用。 1. C/C++语言的变参 1.1 变参函数声明 变参函数...

  • 【C编程】变参函数学习!

    程序运行结果:

  • 函数式编程 响应式编程

    学习函数式编程对于我们理解Masonry && Snapkit有很大的帮助,函数式编程(链式编程)。下面文章也是参...

  • 【C语言学习】如何创建变参函数?

    提到变参函数,我们的感觉是不是既熟悉又陌生?感觉熟悉是因为我们平时都在使用着,如我们常使用的printf()函数与...

  • 总结

    今天我学习了C语言中的函数。函数的定义:函数返回值类型 int,函数名sum,形参(int a,int b),...

  • PHP 学习笔记(二)

    参考资料:PHP5 权威编程 PHP 中的函数 函数的定义:function 函数名($形参1,$形参2....

  • 第四周

    函数 def sb(a,b): 定义函数 a, b 是形参 sb(c,d) 调用sb 函数 c,d是实参 函数局部...

  • 函数式编程总结

    什么是函数式编程 函数式编程关心数据的映射,命令式编程关心解决问题的步骤。 函数式编程的特征 特定的入参返回的值是...

  • 用宏解决C语言变参函数无法获取参数数量的问题

    最近在做一个LED blink函数库的时候,打算用变参函数来作为api,但是众所周知,变参函数需要传入参数的数量,...

  • Golang:变参函数

    变参函数是指可以接受可变数量的参数的函数。 语法 如果一个函数的最后一个参数由 ...T 表示,则表示该函数可以接...

网友评论

    本文标题:【C编程】变参函数学习!

    本文链接:https://www.haomeiwen.com/subject/yzqdohtx.html