总所周知,在我们刷oj题的时候,一般是用cmd终端进行输入输出的,输入和输出都显示在同一屏幕上,导致我们有时候对输出进行难以分析
所以这边分享一个小技巧,利用标准输入输出重定向分离输入和输出以便debug
同时如果有标准答案文件,也可以进行文件比较,更容易发现出错的样例
这里只提这个方法,对于平常刷题已经足够了,而且非常容易使用
但是流输入输出好像不能用这个方法(我没试过,但是感觉不行,得用文件流)
头文件:
//C++
#include<cstdio>
//C
#include<stdio.h>
只需要把以下语句放在main函数的开头:
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
就可以使用
但是我试了试,到处都找不到相应的文件,cmd终端上输出结果倒是没了
所以我建议把文件的路径也写上去,并且在相应位置新建相应的文件
freopen("D:\\vscode_c\\work\\output.txt", "w", stdout);
就像这个,我当时只用了输出的,所以这边只演示输出的
注意在字符串中 \\ 代表的是 ' \ '
后面我是成功得在相应文件里面得到了输出,然后和一万多行的标准输出文件比对了
并找到了自己愚蠢的错误