dup和dup2函数(转)
?
原文url: http://learn.akae.cn/media/ch29s03.html
?
例?29.2.?dup和dup2示例程序 图?29.9.?dup/dup2示例程序 重点解释两个地方: 第3幅图,要执行 第5幅图,要执行 ?dup2(fd, 1);,文件描述符1原本指向tty,现在要指向新的文件somefile,就把原来的关闭了,但是tty这个文件原本有两个引用计数,还有文件描述符save_fd也指向它,所以只是将引用计数减1,并不真的关闭文件。dup2(save_fd, 1);,文件描述符1原本指向somefile,现在要指向新的文件tty,就把原来的关闭了,somefile原本只有一个引用计数,所以这次减到0,是真的关闭了。