您的位置:首页 > 编程语言 > C语言/C++

c++ 可变参数自定义print c/c++如何写一个带可变参数的函数

2014-03-13 13:49 387 查看
#define CFG_TEST
1

void print(const char *format, ...)
{
#ifdef CFG_TEST
    char buffer[1024] = {0};
    va_list args;
    va_start(args, format);
    vsnprintf(buffer,1024, format,args);
    va_end(args);
    printf("%s", buffer);
#endif
}

float WCAvg(int n, ...)
{
    // 声明一个指针,
用于持有可变参数
    va_list pArg;
    
    // 将 pArg
初始化为指向第一个参数
    va_start(pArg, n);
    
    float sum = 0;
    
    // 输出参数
    for(int i =
0; i != n; ++i)
    {
        // 获取 pArg
所指向的参数并输出
        sum += va_arg(pArg,
double);
    }
       va_end(pArg);
       return sum / n;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: