首页 > 后端开发 > C++ > 如何在 C 中将变量参数从一个函数传递到另一个函数?

如何在 C 中将变量参数从一个函数传递到另一个函数?

Patricia Arquette
发布: 2024-12-11 17:21:15
原创
780 人浏览过

How Can I Pass Variable Arguments from One Function to Another in C?

在 C 中的函数之间传递变量参数

这个问题涉及将变量参数传递给另一个也接受变量参数列表的函数。该任务涉及从 example 调用 exampleB,同时保留 exampleB 中的变量参数列表。

直接传递参数是不可行的。相反,需要一个接受变量参数列表的中间函数。实现方式如下:

#include <stdarg.h>

static void exampleV(int b, va_list args); // Intermediary function

void example(int a, int b, ...) // Renamed for consistency
{
    va_list args;
    do_something(a);                // Use argument a
    va_start(args, b);
    exampleV(b, args);
    va_end(args);
}

void exampleB(int b, ...)
{
    va_list args;
    va_start(args, b);
    exampleV(b, args);
    va_end(args);
}

static void exampleV(int b, va_list args)
{
    ...whatever you planned to have exampleB do... // Excluding va_start and va_end
}
登录后复制

在此设置中,exampleV 充当桥梁,将变量参数从 example 传递到 exampleB,而不对 exampleB 进行修改。

以上是如何在 C 中将变量参数从一个函数传递到另一个函数?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板