FILE* logfile;
freopen_s(&logfile, "log.txt", "w", stdout);
printf("test");
fclose(stdout);
我对Visual Studio有一个奇怪的问题。当我在控制台应用程序中执行上述代码时,日志文件写得很好。但是当我在Win应用程序中执行代码时,日志文件始终为空。
有谁知道我做错了什么?
答案 0 :(得分:0)
Windows程序没有连接控制台。因此,任何流到标准输出的流IO都没有效果。您可以通过SUBSYSTEM开关将应用程序转换为控制台应用程序,也可以通过SetStdHandle函数为stdout指定句柄。