???(iPhone)?????
2021-01-21 23:02freopen影响scanf输入,怎么回事?
一段测试代码,用来测试 freopen("out.txt", "w", stdin); 对输入的影响
#include <bits/stdc++.h>
using namespace std;
int main()
{
// freopen("in.txt", "r", stdin);
freopen("out.txt", "w", stdin);
int a=-100;
scanf("%d",&a);
printf("%d",a);
}
调试图:
a初始化为-100,此时控制台无法输入,可直接“下一步”
a的值一直为初始值-100
可一旦注释掉freopen("out.txt", "w", stdin);
整个程序就正常了(cin输入也有这个问题)
还发现freopen("in.txt", "r", stdin);并不会影响scanf输入,程序正常。
困扰了我好久,无意间注释掉这行才发现。
小白求救各位大神原因
- 点赞
- 回答
- 收藏
- 复制链接分享
5条回答
为你推荐
- PTA 题目7-48 银行排队问题之单窗口“夹塞”版 (30 分)的最后一个测试点如何过
- c++
- 1个回答
- UVa 400 Unix Is命令 题目AC不出,不明白问题在哪
- 算法
- uva
- 1个回答
- 用scanf()的时候出了一个奇怪的问题
- c++
- scanf()
- 6个回答
- C语言问题 感觉自己是对的 但提交后总 Runtime error
- c
- 调试
- 链表
- 2个回答
- freopen函数只读入文件得一部分
- c语言
- 2个回答
换一换