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