大家都很熟悉printf这个函数。
该函数的原型为:
int printf(const char* format, ...);
参数format 表示如何来格式化字符串指令;...表示可选参数,调用时传递给...的参数可有可无,具体情况根据实际情况来定。
下面,是我写的一个不定参数的函数,这个函数的功能是用来写数据到文件中。
void write_data(const char* fmt, ...)
{
va_list arg_ptr;
va_start(arg_ptr, fmt);
fseek(g_fpDbg, 0L, SEEK_END); // 指针移动到末尾
vfprintf(g_fpDbg, fmt, arg_ptr);
fflush(); // 立即刷新
va_end(arg_ptr);
}
调用例子:
write_data("%s-%d-%s\n", __FILE__, __LINE__, __FUNCTION__);
end.