比较cpp和python上的程序结果
我想使用比较cpp和python上的程序结果,python,c++,testing,Python,C++,Testing,我想使用Python测试cpp代码 我有下一个代码和a.exe文件,在编译后得到: int main() { std::istream& input_stream = std::cin; std::ostream& output_stream = std::cout; Data input_data = ReadData(input_stream); Data output_data = DoSomethingWithData(input_data
Python
测试cpp
代码
我有下一个代码和a.exe
文件,在编译后得到:
int main() {
std::istream& input_stream = std::cin;
std::ostream& output_stream = std::cout;
Data input_data = ReadData(input_stream);
Data output_data = DoSomethingWithData(input_data);
OutputData(output_data, output_stream);
return 0;
}
我有py
code:
input_data = ''
for line in sys.stdin:
input_data += line
output_data = do_something_with_data(input_data)
print(output_data)
我想制作
py
脚本,它可以为cpp
程序和py
程序提供相等的输入,并比较输出。有简单的方法吗?您可以使用子流程
():
看起来您正在使用windows。我会将两个程序的输出重定向到一个文件,然后比较文件。在cmd.exe中:
a.exe > a_output.txt
your_python_script.py > py_output.txt
FC a_output.txt py_output.txt
您可以使用“>”将输出重定向到文本。命令FC(文件比较)检查文件之间的差异
assert
无助于理解差异是什么。在这种情况下,模块可能很有用。
a.exe > a_output.txt
your_python_script.py > py_output.txt
FC a_output.txt py_output.txt