如何从外部文件读取 gcc 输入

如何从外部文件读取 gcc 输入

y.cpp我正在尝试从文件中读取 c++ 文件的输入file.in并保存结果,file.out但我不知道如何去做。

例如,如果以下代码在y.cpp

#include<iostream>
using namespace std;
int main(){
int x;
cin>>x;
cout<<x<<" was entered";
}

内容file.in

56

我想要一个 shell 命令来写入56 was enterddfile.out

到目前为止我所做的就是编译y.cpp并打印结果file.out

g++ y.cpp -o y.out
./y.out>file.out

但是在我的代码中,读取是从终端而不是从 读取file.in,而我想从 读取file.in

我搜索了一种管道方法,将file.in内容管道化到g++命令中,而不是从终端读取。但我没有找到任何有关管道输入文件的内容。我发现的只是将源代码管道化到编译器中,而不是管道输入。

我还搜索了 g++ 的所有具有参数的选项file,但找不到任何可以回答我的问题的东西。

我该怎么做?如何从外部文件读取 C++ 输入而不是从终端读取?

答案1

这实际上与 gcc(或 g++)无关:你需要的是文件重定向

./y.out < file.in

或(重定向程序的输出及其输入)

./y.out < file.in > file.out

相关内容