之前老是遇到这种问题:如果有输入就一直输入,没有输入就停止
所以特地写个传送门:(while(scanf(“%d“,&n) !=EOF))的用法_小__怪兽的博客-CSDN博客
值得注意的是:
在visual studio里面运行要写成scanf_s,但是在oj里面运行时要改成scanf
while (scanf_s("%d", &n) != EOF){
Map map;
map.set(n);
map.find_min_length();
}
刚刚从舍友那得知还有另外一种c++的方法!大为震撼
while(cin>>n){
...省略
}
这一次作业第一次知道ctrl C最多只能拷贝4094个字符到命令行,所以通过重定向输入流来解决这个问题
在主函数里面添加了以下两个函数,in.txt是输入的案例
#输入
freopen("D:\\in.txt", "r", stdin);
fclose(stdin);
#输出
freopen("D:\\out.txt","w",stdout);
fclose(stdout);
运行后出现这个问题:
'freopen': This function or variable may be unsafe. Consider using freopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
需要加入:_CRT_SECURE_NO_WARNINGS
解决方案的传送门:Visual Studio解决freopen等函数报错函数安全问题_weixin_34380948的博客-CSDN博客
如何解决vs2019中freopen等函数报错问题_lyliiyong的博客-CSDN博客
两个交替看完美解决