标题:请各位大侠指教~~个问题
只看楼主
lhtcanow
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-8-17
结帖率:100%
已结贴  问题点数:0 回复次数:4 
请各位大侠指教~~个问题
程序代码:
#include <iostream>
#include <string>

using namespace std;
int main()
{
    string s;
    while(getline(cin,s))
        cout<<s<<endl;
    return 0;
}
为什么两个回车以后才输出之前输入的字符串?
搜索更多相关主题的帖子: 指教 
2010-08-23 20:22
xishui777
Rank: 2
等 级:论坛游民
帖 子:53
专家分:94
注 册:2010-8-17
得分:0 
没什么问题。
2010-08-23 20:50
holychild
Rank: 2
等 级:论坛游民
帖 子:21
专家分:31
注 册:2010-8-22
得分:10 
因为getline有三个参数,第三个参数是字符串的结束符,也就是当getline遇到这个结束符时,就不在接受输入了,比如写成 getline(cin,st,'s'); 即使输入的是abcsabc 那么也只会显示 abc ,因为getline默认情况下以回车('\n')作为结束符,第一次按回车才能够表示字符串结束。
2010-08-24 22:51
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
得分:10 
这是 vc6.0 的 bug。不久前我还在一个置顶的帖子里提来着。果然又有人问了~~
网上搜一下,就能找到解决方法:
http://hi.baidu.com/linan/blog/item/d0c09123107bb341ad34dea7.html
2010-08-25 00:25
lhtcanow
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2010-8-17
得分:0 
谢谢了,讲的很明白。。
2010-08-25 19:56



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-316602-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.132844 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved