freopen( "in.txt ", "r ", stdin);
freopen( "out.txt ", "w ", stdin);
但并不存在一個(gè)完全兼容的解決方案能夠在以后將標(biāo)準(zhǔn)句柄恢復(fù)。在C標(biāo)準(zhǔn)庫(kù)里面是沒有辦法的。
很容易想到的方式是重新打開標(biāo)準(zhǔn)控制臺(tái)設(shè)備文件,但遺憾的是,這個(gè)設(shè)備文件的名字是操作系統(tǒng)相關(guān)的。
在DOS/Win中,這個(gè)名字是CON,因此可以使用 :
freopen( "CON ", "r ", stdin)
在linux中,控制臺(tái)設(shè)備是 /dev/console.
C++ :
freopen( "/dev/console ", "r ", stdin)