我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

« 1 2» Pages: ( 1/2 total )
本页主题: 求助C++的一道题 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ gasp /ga:sp/ v. & n. 气喘 ]


求助C++的一道题

#include<iostream>
#include<string>
#include<cstring>
using namespace std;
void change(string &a);
int main()
{
cout<<"Enter a string (q to quit):";
string a;
getline(cin,a);
while(a!="q")
{
  change(a);
  cout<<a<<endl;
  cout<<"Next string (q to quit):";
  getline(cin,a);
}
cout<<"Bye"<<endl;
return 0;
}
void change(string &a)
{
    for(int i=0;i<a.size();i++)
    a[i]=toupper(a[i]);
   
}
就是刚才那个程序,但是getline(cin,a)这句好像有问题,输入字符串后必须输入两个回车才打印大写字符,但是将getline(cin,a)换成cin>>a就没问题了,不明白啊,刚才是说软件有问题,但是我在另一个同学的电脑上试了下,结果还是一样,哪位帮我看看啊。。。
远程图片:未命名.JPG
顶端 Posted: 2007-10-05 21:28 | [楼 主]
perfect_刘



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 960
威望: 0
浮云: 1105
在线等级:
注册时间: 2005-11-20
最后登陆: 2009-05-08

5come5帮你背单词 [ data /'deitə/ n. 资料,数据 ]


你看msdn上有说明的~
getline默认是以回车'\n'为结束符 所以你第一个回车认为是输入结束符
第二个回车才是输入确认~
一般这样用getline(cin,a,' '); 用空格作为结束 你每次输入后加一个空格再回车就没有问题了~
顶端 Posted: 2007-10-05 21:54 | [1 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ revolution /revə'lu:ən/ n. 革命,大变革,旋转,周期,循环 ]


Quote:
引用第1楼perfect_刘于2007-10-05 21:54发表的  :
你看msdn上有说明的~
getline默认是以回车'n'为结束符 所以你第一个回车认为是输入结束符
第二个回车才是输入确认~
一般这样用getline(cin,a,' '); 用空格作为结束 你每次输入后加一个空格再回车就没有问题了~

msdn在哪里看
顶端 Posted: 2007-10-05 21:58 | [2 楼]
luwen



性别: 帅哥 状态: 该用户目前不在线
头衔: 无我相
等级: 人见人爱
发贴: 4372
威望: 0
浮云: 1120
在线等级:
注册时间: 2006-09-14
最后登陆: 2013-09-25

5come5帮你背单词 [ still /stil/ ad. 仍然,还,然而,依旧,更,愈,别外,又;a. 寂静的,平静的 ]


楼上正解
顶端 Posted: 2007-10-05 21:59 | [3 楼]
luwen



性别: 帅哥 状态: 该用户目前不在线
头衔: 无我相
等级: 人见人爱
发贴: 4372
威望: 0
浮云: 1120
在线等级:
注册时间: 2006-09-14
最后登陆: 2013-09-25

5come5帮你背单词 [ jury /'d3əuəri/ n. 陪审团,(展览会、竞赛等的)评判委员会 ]


Quote:
引用第2楼xuer于2007-10-05 21:58发表的  :

msdn在哪里看

你安装了没有的俄
顶端 Posted: 2007-10-05 22:00 | [4 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ progressive /prə'gresiv/ a. 不断前进的,渐进的,进行中的,向前进的,先进的 ]


Quote:
引用第4楼luwen于2007-10-05 22:00发表的  :

你安装了没有的俄

还要安装
顶端 Posted: 2007-10-05 22:01 | [5 楼]
perfect_刘



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 960
威望: 0
浮云: 1105
在线等级:
注册时间: 2005-11-20
最后登陆: 2009-05-08

5come5帮你背单词 [ symbolize /'simblaiz/ n. 象征,为…的符号 ]


gdfgg.JPG 你要的就是这个结果~~
终极解决 要修改系统头文件
这是microsoft的一个bug~~~
顶端 Posted: 2007-10-05 22:04 | [6 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ run /rΛn/ vi. 跑,行驶,来往,流,转动;vt. 跑过,穿过,驾驶,管理,经营;n.跑,行程,航线 ]


Quote:
引用第6楼perfect_刘于2007-10-05 22:04发表的  :
你要的就是这个结果~~
终极解决 要修改系统头文件
这是microsoft的一个bug~~~

是VC的bug?
顶端 Posted: 2007-10-05 22:05 | [7 楼]
perfect_刘



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 960
威望: 0
浮云: 1105
在线等级:
注册时间: 2005-11-20
最后登陆: 2009-05-08

5come5帮你背单词 [ childhood /'taildhud/ n. 童年,幼年 ]


在.net中就不存在了
你要修改吗?
要小心 改错了可又很恐怖的事情发生哦
顶端 Posted: 2007-10-05 22:08 | [8 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ single /'siŋgl/ a. 单个的,单一的,独身的,每个的,个别的;vt. 挑选 ]


现在是这样了
远程图片:未命名.JPG
顶端 Posted: 2007-10-05 22:10 | [9 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ unpleasant /Λn'pleznt/ a. 使人不愉快的,讨厌的 ]


他换两行输出。。。getline(cin,a,' '); 改这样,然后输入字符后加一空格再回车,是这样吗
顶端 Posted: 2007-10-05 22:12 | [10 楼]
perfect_刘



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 960
威望: 0
浮云: 1105
在线等级:
注册时间: 2005-11-20
最后登陆: 2009-05-08

5come5帮你背单词 [ retire /ri'taiə/ vi. 退休,退职,退下,离开,隐居,隐退 ]


哦??
你怎么弄得阿?
顶端 Posted: 2007-10-05 22:12 | [11 楼]
perfect_刘



性别: 帅哥 状态: 该用户目前不在线
等级: 栋梁之材
发贴: 960
威望: 0
浮云: 1105
在线等级:
注册时间: 2005-11-20
最后登陆: 2009-05-08

5come5帮你背单词 [ altogether /o:ltə'geðə/ ad. 总共,完全地,总之 ]


Quote:
引用第10楼xuer于2007-10-05 22:12发表的  :
他换两行输出。。。getline(cin,a,' '); 改这样,然后输入字符后加一空格再回车,是这样吗

我是说如果要按照你最开始的愿望只要一个回车的话需要该vc的string头文件~
顶端 Posted: 2007-10-05 22:15 | [12 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ comfort /'kΛmfət/ vt. 使安慰,使舒服;n. 安慰,舒适,安逸 ]


其他都没变,就改为getline(cin,a,' ');我输入aa然后再输一空格,然后按回车,第一行正常,第二行开始回车后它中间会空一行了
顶端 Posted: 2007-10-05 22:15 | [13 楼]
xuer



誓言守护者 执着之戒 真诚之戒 勇敢之戒
性别: 帅哥 状态: 该用户目前不在线
头衔: 学而时习之
等级: 人见人爱
家族: 起早不摸黑
发贴: 3393
威望: 0
浮云: 0
在线等级:
注册时间: 2006-11-19
最后登陆: 2018-08-13

5come5帮你背单词 [ stretch /stret/ v. (被)拉长,伸展;n. 伸展,舒展,连续的一段时间,一大片(地或水) ]


#include<iostream>
#include<string>
#include<cstring>
using namespace std;
void change(string &a);
int main()
{
cout<<"Enter a string (q to quit):";
string a;
getline(cin,a,' ');
while(a!="q")
{
  change(a);
  cout<<a<<endl;
  cout<<"Next string (q to quit):";
  getline(cin,a,' ');
}
cout<<"Bye"<<endl;
return 0;
}
void change(string &a)
{
    for(int i=0;i<a.size();i++)
    a[i]=toupper(a[i]);
   
}
现在的代码
顶端 Posted: 2007-10-05 22:16 | [14 楼]
« 1 2» Pages: ( 1/2 total )
我来我网·5come5 Forum » 程序员之家

Total 0.013045(s) query 5, Time now is:01-23 02:40, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号