读书人

基准c c语言 重载printf 输出到屏幕和

发布时间: 2012-08-07 14:54:48 作者: rapoo

标准c c语言 重载printf 输出到屏幕和文件
不想输出到控制台,可以采取管道,截取stdout重定向到自己创建的管道。

重载printf:


FILE* fout = 0;
int __cdecl myprintf(const char *format, ...) //__cdecl 是关键的返回值类型
{
va_list args;
va_start(args, format);
if(fout == 0)
fout = fopen("log.txt","w");
vfprintf(fout, format, args);
return vprintf(format, args);

}



int __cdecl myputch(__in int _Ch)
{
if(fout == 0)
fout = fopen("log.txt","w");
fputc(_Ch, fout);
return putchar(_Ch);
}

读书人网 >C语言

热点推荐