在C++中,你可以使用freopen()
函數來實現對stdin
的文件重定向
#include<iostream>
#include <cstdio>
int main() {
// 將stdin重定向到一個名為input.txt的文件
freopen("input.txt", "r", stdin);
if (stdin == nullptr) {
std::cerr << "Error opening input file."<< std::endl;
return 1;
}
int num;
while (std::cin >> num) {
std::cout << "Read number: "<< num<< std::endl;
}
// 關閉重定向的文件
fclose(stdin);
return 0;
}
在這個示例中,我們首先使用freopen()
函數將stdin
重定向到名為input.txt
的文件。然后,我們從重定向的stdin
讀取整數并輸出它們。最后,我們使用fclose()
函數關閉重定向的文件。
請注意,這個示例假設input.txt
文件存在并包含一些整數。如果文件不存在或無法打開,程序將輸出錯誤消息并返回1。