小编Ned*_*die的帖子

重复使用可变参数函数参数不起作用

我有一个函数,试图将东西记录到控制台和日志文件,但它不起作用.第二次使用变长参数会将垃圾写入控制台.有任何想法吗?

    void logPrintf(const char *fmt, ...) {
        va_list ap;    // log to logfile
        va_start(ap, fmt);
        logOpen;
        vfprintf(flog, fmt, ap);
        logClose;
        va_end(ap);
        va_list ap2;   // log to console
        va_start(ap2, fmt);
        printf(fmt, ap2);
        va_end(ap2);
    }
Run Code Online (Sandbox Code Playgroud)

c c++ variadic variadic-functions

13
推荐指数
2
解决办法
4128
查看次数

标签 统计

c ×1

c++ ×1

variadic ×1

variadic-functions ×1