將輸入和輸出流重新導向到檔案
將標準輸入(cin)和標準輸出(cout)重新導向到檔案進行輸入和輸出操作分別遵循這些步驟:
實現:
#include <iostream> #include <fstream> #include <string> int main() { // Open the input and output files std::ifstream in("in.txt"); std::ofstream out("out.txt"); // Redirect cin and cout to the files std::streambuf* cinbuf = std::cin.rdbuf(); std::cin.rdbuf(in.rdbuf()); std::streambuf* coutbuf = std::cout.rdbuf(); std::cout.rdbuf(out.rdbuf()); // Perform input and output operations std::string line; while (std::getline(std::cin, line)) { std::cout << line << "\n"; } // Reset cin and cout to standard streams std::cin.rdbuf(cinbuf); std::cout.rdbuf(coutbuf); return 0; }
說明:
使用 std::cin.rdbuf(cinbuf) 和 std::cout.rdbuf(coutbuf) 將 cin 和 cout 恢復到原始緩衝區。
簡化重定向:auto cinbuf = std::cin.rdbuf(in.rdbuf());
以上是如何將 C 標準輸入和輸出流重定向到檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!