感觉在代码里加freopen太麻烦了 经常忘记删然后交上去RTE一发 ,不如写个批处理来重定向输入输出。
首先需要这样一个文件夹,AC放标程,WA放错误的程序,记得编译成exe。
- .out文件、.bat文件可以用空记事本改后缀名创建。
- Input.txt放测试数据。
@echo off
WA.exe < Input.txt > WA.out
AC.exe < Input.txt > AC.out
fc WA.out AC.out
pause
bat代码解释(可跳过):
第一行隐藏回显,可加可不加,加了好看一点而已。
二三行将Input重定向至exe的输入并将输出重定向至.out文件(类似linux操作)。
第四行fc(file compare)比较两个输出文件,如果没有差异输出“找不到差异”,否则分别输出文件内容。
最后的pause是为了程序执行完后不立即关闭,便于查看结果。
于是终于不用freopen了~