先决条件:用于竞争性编程的C / C++, Java和Python外部文件的输入/输出
在以上文章中,我们看到了一种使用文件处理从外部文件进行标准输入/输出的方法。在这篇文章中,我们将看到一种非常简单的方法。在这里,我们将使用输入和输出流从终端或cmd编译并运行我们的代码。
Windows环境
对于Windows ,重定向运算符会将命令输入和输出流从默认位置重定向到其他位置。
- 重定向命令输入(<) :要将命令输入从键盘重定向到文件或设备,请使用<运算符。
- 重定向命令输出(>) :要将命令输出从“命令提示符”窗口重定向到文件或设备,请使用>运算符。
运行代码
a.exe < input_file > output_file
// A simple C++ code (test_code.cpp) which takes
// one string as input and prints the same string
// to output
#include
using namespace std;
int main()
{
string S;
cin >> S;
cout << S;
return 0;
}
输入来自input.txt:
GeeksForGeeks
编译并运行:
g++ test_code.cpp
a.exe < input.txt > output.txt
在output.txt中输出:
GeeksForGeeks
Linux环境
Linux中的I / O重定向: Linux环境中的输入和输出分布在三个流中。这些流是:
- 标准输入(stdin) :标准输入流通常将数据从用户传送到程序。期望标准输入的程序通常会从设备(例如键盘)接收输入,但是使用<我们可以重定向文本文件中的输入。
- 标准输出(stdout) :标准输出写入由程序生成的数据。当标准输出流未重定向时,它将输出文本到终端。通过使用>,我们可以将输出重定向到文本文件。
- 3.标准错误(stderr) :标准错误写入由在执行某时失败的程序所生成的错误。与标准输出一样,此流的默认目标是终端显示。
Linux包括每个流的重定向命令。
覆盖:用单括号括起来的命令将覆盖目标的现有内容。
- > –标准输出
- <–标准输入
- 2> –标准错误
追加:带双括号的命令不会覆盖目标的现有内容。
- >> –标准输出
- << –标准输入
- 2 >> –标准错误
在这里,我们将使用Overwrite的命令,因为我们不需要附加输出,即我们只需要一个代码的输出。
编译C++代码
g++ file_name.cpp
运行代码
./a.out < input_file > output_file
同样,我们可以通过首先编译代码,然后在运行代码时以给定格式提供输入/输出文件,来为C或Java文本文件提供标准的输入/输出。对于不需要编译的Python的语言,我们执行以下操作
python test_code.py < input.txt > output.txt
相关文章:竞争性编程的Python输入法
参考 :
- 微软
- 数字海洋
如果您希望与行业专家一起参加现场课程,请参阅《 Geeks现场课程》和《 Geeks现场课程美国》。