【发布时间】:2017-12-08 18:09:04
【问题描述】:
这是我的代码,我无法让它工作。
int pfd = open("file", O_WRONLY, 0777);
int saved = dup(1);
close(1);
dup(pfd);
close(pfd);
printf("This goes into file\n");
// restore it back
dup2(saved, 1);
close(saved);
printf("this goes to stdout");
我对我的代码添加了一些修改。
【问题讨论】:
-
dup(pfd);不会让标准输出写入文件。 -
您是否考虑过多次使用
dup2? -
对不起,我忘了在
dup(pfd)之前添加close(1) -
好像是this的骗子
-
但我在第一行打开文件。该链接中的解决方案在复制后将其打开。我应该如何让我的工作?
标签: c stdout io-redirection dup2 dup