Tag: 参数variadic functions

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

我有一个函数,试图将东西记录到控制台和日志文件,但它不起作用。 第二次使用可变长度参数会将垃圾写入控制台。 有任何想法吗? 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); }