请问这个可变参数函数怎么写?

f_acme 2006-10-09 04:30:32
int Lprintf(const char *fmt, ...)
{
va_list ap;

va_start(ap, fmt);
int n = vprintf(fmt, ap);
fprintf(fp, "%s\n", fmt);//想把字符串写入文件,fp为打开的文件指针
va_end(ap);
return n;
}
测试:Lprintf("Error: %s (errno:%d)", "abcd", 5);
本想把输出写入文件的,可是这样只能写到标准输出,中间注释的那条语句没有用,文件中写入的却是Error: %s (errno:%d),请问怎么改可以写入文件?并且要求控制台不输出,只输出到文件fp中。
...全文
132 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
f_acme 2006-10-09
  • 打赏
  • 举报
回复
哦,没看到有个vfprintf函数
chenhu_doc 2006-10-09
  • 打赏
  • 举报
回复
http://blog.csdn.net/laomai/archive/2005/02/01/276274.aspx

提供资料。
goodluckyxl 2006-10-09
  • 打赏
  • 举报
回复
是vfprintf少个f
goodluckyxl 2006-10-09
  • 打赏
  • 举报
回复
int vfprintf( FILE *stream, const char *format, va_list argptr );

本身就可以处理标准输入输出文件的操作
vprintf(fp,fmt, ap);

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧