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

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

xuer



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

5come5帮你背单词 [ generation /d3əenə'reiən/ 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帮你背单词 [ scholar /'skolə/ 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帮你背单词 [ bibliography /bibli'ogrəfi/ 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帮你背单词 [ salty /'so:lti/ a. 盐的,咸的 ]


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



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

5come5帮你背单词 [ statute /'stætju:t/ 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帮你背单词 [ witty /'witi/ 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帮你背单词 [ heavenly // a. 天国的,天空的,天的 ]


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



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

5come5帮你背单词 [ outer /'autə/ a. 外部的,外层的 ]


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帮你背单词 [ toilet /'toilit/ n. 厕所,洗手间 ]


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



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

5come5帮你背单词 [ database // n. 数据库 ]


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



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

5come5帮你背单词 [ grade /greid/ n. 分级,等级,年级,分数;vt. 分级,记成绩 ]


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



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

5come5帮你背单词 [ brush /brΛ/ vt. 刷;n. 毛刷,刷子,画笔 ]


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



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

5come5帮你背单词 [ religious /ri'lid3əs/ a. 宗教的 ]


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帮你背单词 [ uneven /'Λn'i:vən/ a. 不平坦的,不平等的,不匹配的,质量不均的 ]


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



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

5come5帮你背单词 [ towel /'tauəl/ 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.014257(s) query 5, Time now is:11-23 01:32, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号