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

how to read gcc input from external file

我正在尝试从文件 file.in 中读取 C++ 文件 y.cpp 的输入并将结果保存在 file.out 中,但我不知道该怎么做.

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

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

file.in的内容是

56

我想要一个 shell 命令在 file.out

中写入 56 was enterdd

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

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

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

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

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

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

试试这个

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