标题:为什么用cin.getline就不能输入姓名,用cin就可以?
只看楼主
njcr7
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-8-21
结帖率:0
已结贴  问题点数:10 回复次数:6 
为什么用cin.getline就不能输入姓名,用cin就可以?

第150行为什么用cin.getline就不能输入姓名,用cin就可以?
还有为什么循环体时输入非数字,就会一直无限循环?
搜索更多相关主题的帖子: 姓名 
2016-09-20 17:12
金金金
Rank: 2
等 级:论坛游民
帖 子:16
专家分:19
注 册:2016-8-25
得分:5 
因为循环体内 你定义的是 int,输入非数字是进入死循环
2016-09-20 19:58
njcr7
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-8-21
得分:0 
回复 2楼 金金金
那为什么用cin.getline就不能输入m_name,用cin就可以呢?
2016-09-21 16:03
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:5 
估计楼主说的是 输入number后遗留的'\n'

cin>>xxx 默认跳过空白字符
cin.getline 则不跳过空白字符
getline前加个 cin >> ws; 吧
2016-09-21 16:16
njcr7
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2016-8-21
得分:0 
回复 4楼 rjsp
谢谢,不过没有明白你说的什么意思
2016-09-21 20:51
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
回复 5楼 njcr7
就是跳过空白字符
http://en.
2016-09-21 22:28
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
链接贴错了,重来 http://en.
2016-09-21 22:29



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




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

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