重定向

stdin->STDIN_FILENO->键盘

stdout->STDOUT_FILENO->屏幕

要让进程的标准输入或标准输出重定向,有两种方式:

1.重定向到一个文件,该文件用路径标志:freopen

2.重定向到一个文件描述符:dup2

dup2是让fd2与fd1共享文件表项。例如,为了让标准输入重定向到文件描述符fd,则调用dup2(fd,0),这样,进程首先关闭描述符0,然后让描述符0指向fd的文件表项。而printf是输出到stdout,stdout与描述符0关联,0现在不再与屏幕关联了,而是与fd相同。因此printf的结果会输出到fd标志的文件里。

posted @ 2014-09-29 19:01  米其林轮船  阅读(182)  评论(0编辑  收藏  举报