在写代码时,尤其是ACMer,经常需要用到重定向操作,最近遇到了一个问题是使用:
#ifdef LOCAL
freopen("data.in", "r", stdin);
freopen("data.out", "w", stdout);
#endif
重定向时,一直运行失败,据星哥说:“是由于windows环境会对后缀进行特殊处理,不同于Linux系统”,解决方案也很简单,先新建data.txt文本文件,然后把数据保存在其中,然后只需要修改后缀使文件名为data.in即可。
编译时加上命令:
g++ -D LOCAL *** ***.cpp
即可,如此便可以直接提交代码而不会被判WA。