stdarg.h这个头文件的作用

stdarg.h头文件在C语言中用于处理不定长参数,提供va_list、va_start、va_arg和va_end等宏进行操作。va_list定义了一个特殊的类型,用于在函数中遍历不定长参数。通过va_start初始化,va_arg读取参数,最后va_end结束处理。vfprintf函数是使用这些宏的一个例子,它能像printf一样向文件流写入格式化的字符串,但接受一个va_list参数来处理不定长参数。
摘要由CSDN通过智能技术生成

一、简单版本

http://www.runoob.com/cprogramming/c-standard-library-stdarg-h.html

作用:帮助不定长参数的使用

va_list:一个特殊的类型,在va_start(), va_arg(), va_end()这三个宏当中使用

va_start():开始不定长参数的使用

va_arg():读入不定长参数

va_end():结束不定长参数的使用

例如:有一个函数,有不定长参数

void foo(int, ...);

完整例子:

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

void foo(int, ...);

int main(void) {
    double x = 1.1, y = 2.1, z = 3.9;
    double a = 0.1, b = 0.2, c = 0.3;

    puts("Three parameters: ");
    foo(3, x, y, z);

    puts("Six parameters: ");
    foo(6, x, y, z, a, b, c);

    return 0;
}

void foo(int len, ...) {
    va_list args;
    va_start(args, len);

    for(int j = 0; j < len; j+
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值