1
stdinBackup = 4;
dup2(0, stdinBackup);
目前我正在做上面的'备份'stdin,以便它可以在其他地方重定向后从备份中恢复。我有一种感觉,我做了很多错误? (例如,任意指定4肯定是不正确的)。任何人都指向正确的方向?创建备份文件描述符?
stdinBackup = 4;
dup2(0, stdinBackup);
目前我正在做上面的'备份'stdin,以便它可以在其他地方重定向后从备份中恢复。我有一种感觉,我做了很多错误? (例如,任意指定4肯定是不正确的)。任何人都指向正确的方向?创建备份文件描述符?
我没有理由使用'STDIN_FILENO'代替0,当POSIX所有时间固定为0时。 – 2010-07-26 12:25:33
@R:甚至没有可读性?我想说的是,当谈到正在发生的事情时,STDIN_FILENO比纯0更有帮助。避免神奇的数字,以及所有这些。 – unwind 2010-07-29 19:27:28
我对你不了解,但是我的眼睛/大脑可以更容易和快速地区分0/1/2,而不是从丑陋的全部大写的STDxxx_FILENO中挖掘出xxx(IN/OUT/ERR)。 – 2010-07-29 20:01:46