我正在尝试用C ++读取某人的全名,并且显然会有空格(例如“ John Doe”)。我这样做的最简单方法(因为默认情况下cin
在空白处中断)是使用getline(cin, str)
,其中“ str”是变量。
但是,这样做时,它将开始在下一行读取文本。代替这个:
请输入您的全名> John Doe
你得到
请输入您的全名>
John Doe
以下是产生结果的代码:
string fullName;
cout << "Please enter your full name >";
getline(cin, fullName);
有什么办法可以使我读完整行并仍然保持在同一行?
答案 0 :(得分:0)
没有最小,完整,可验证的示例,很难诊断出您遇到的问题。但是,我能够生成从用户读取输入内容的代码,而不会破坏前面的“ Enter your name>”行:
std::cout
如果您习惯于将所有std::endl
行与{{1}}附加在一起,那么您可能忽略了这段时间。