抛砖引玉
所在版块:求学狮城 发贴时间:2003-05-12 18:10

用户信息
复制本帖HTML代码
高亮: 今天贴 X 昨天贴 X 前天贴 X 
我先去掉了前面两个正常运行的fragment,单独测试最后一个,程序正常。因此怀疑是standard in部分的问题。原因是上面输入1,2的以后有个enter,这个'\n'被存在了standard input stream里面,因此getline首先search到的是这个enter,也就是说end of line,自然不会继续读取input了。
为了验证这个猜想,我把getline的parameter改成了(str,100,' '),也就是说用space来结束,程序正常。
遗憾的是用c里面的fflush(stdin)没有用,不知道是不是VC++的问题,那位在unix上面试试看?
另外,我改成cin>>str,结果正常。

有不对之处,盼指正啊!
.
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!

Put your OWN COOL signature here!
 相关帖子 我要回复↙ ↗回到正文
问一个关于c++ input 的问题。。 我行故我   (939 bytes , 493reads )
多谢kikicoco 和 魅力十足 我行故我   (0 bytes , 172reads )
抛砖引玉 kikicoco   (495 bytes , 208reads )
Yes, it is caused by the return character. 魅力十足   (238 bytes , 268reads )
why fflush(stdio) cannot work?? kikicoco   (0 bytes , 233reads )
Hehe, 魅力十足   (68 bytes , 216reads )
No, your explanation is wrong. Flying   (241 bytes , 150reads )
还以为能兼容... kikicoco   (29 bytes , 161reads )