2011-06-15 80 views
0

我有一个问题得到一个字符串。 我用得到一个字符串C++

getline(cin,string); 

但有某种错误的,当我按下ENTER它跳过一排,有没有解决这个问题,也许另一个函数来获取与空空格的字符串?

+2

显示整个代码,你输入了什么,你期望什么 – nos 2011-06-15 08:27:33

+0

你的意思是跳过一行?跳过你没有输入的线或下一行? – Oleg 2011-06-15 08:40:01

回答

2

我的猜测是你在之前的某处做了cin >> someVar

cin >> someVar
不读的完整产品线,而是停在第一个空格字符,换行\n仍然未被消耗,然后使线的跳跃在getline()

如果是这种情况,

要解决它,你需要的getline()前添加cin.ignore()语句消耗由>>流提取输入流中留下的\n换行符(或任何其他额外的字符)。