【发布时间】:2011-12-01 15:53:47
【问题描述】:
给定以下函数:
freopen("file.txt","w",stdout);
将 stdout 重定向到一个文件中,如何使 stdout 重定向回控制台?
我会注意到,是的,还有其他类似的问题,但是它们是关于 linux/posix 的。我正在使用 Windows。
您不能分配给标准输出,这会使依赖它的一组解决方案无效。 dup 和 dup2() 不是 Windows 原生的,从而使另一组无效。如前所述,posix 函数不适用(除非您计算 fdopen())。
【问题讨论】:
-
您尝试过here 发布的一些内容吗?他们是如何失败的? (顺便说一句,freopen 是 POSIX 并且在 Windows 上可用。Windows 有一些 POSIX 支持。)
-
@Mat:这些是针对 posix 系统的,根据问题,这里使用的是 windows。如果它有 posix 支持,您必须澄清它支持的相关(功能)。
-
freopen - 查看左侧的链接。我不需要澄清任何事情。您使用在 Windows 上有效的函数调用发布了一个问题,并且有类似的问题也使用 Windows 上可用的 API。 (需要做研究的是你自己——你是那个被问题困住的人。)
-
you'll have to不是真的@Mat,或者说其他任何人都不需要,在这里帮助你没有人得到报酬。至少对帮助你的人表示一点感激,而不是要求。 -
@Als:我对系统不熟悉。如果我知道什么有用什么没用,我就不会问这个问题了。他必须给我看,因为我不认识自己。