http://bbs.csdn.net/topics/390371886
#include <stdarg.h>
#include <stdio.h>
int myprintf(const char *fmt, ...)
{
int ret;
va_list ap;
va_start(ap, fmt);
ret = vprintf(fmt, ap);
va_end(ap);
return ret;
}
void logv(const char *file, int line, const char *fmt, ...)
{
va_list ap;
va_start(ap, fmt);
printf("%s:%d: ", file, line);
vprintf(fmt, ap);
va_end(ap);
}
#define dolog(fmt, ...) logv(__FILE__, __LINE__, fmt, __VA_ARGS__)
int main(int argc, char *argv[])
{
myprintf("argc=%d\n", argc);
dolog("argc=%d\n", argc);
return 0;
}