关于 stdin 重定向的问题
#include "iostream" using namespace std ; int main() { char str[128] ; freopen( "a.txt" , "r" , stdin ) ; cin >> str ; cout << str << endl ; fclose(stdin) ; freopen( "b.txt" , "r" , stdin ) ; cin >> str ; //scanf( "%s" , str ) ; 如果用scanf 是可以的 cout << str << endl ; return 0 ; }
a.txt 里只有一行字符串 “aaaaaaaaaaaaaaa”
b.txt 里只有一行字符串 “bbbbbbbbbbbbbbb”
但是只看输出 a.txt 里的 求解。
如果使用注释掉的那一行,注释掉其前面的 cin >> str 的话 , 则两个文件里的都打印出来了 。求解。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)