【发布时间】:2013-02-07 09:36:30
【问题描述】:
这是我第一次在这里发帖,所以我会尽量明确我的问题。所以我需要在变量中存储带有空格的不同字符串。我正在使用 eclipse,但我遇到了问题。
这是代码
using namespace std;
string p_theme;
string p_titre;
int p_anneeEdition;
string p_pays;
string p_auteur;
string p_editeur;
string p_isbn;
cout << "Veuillez saisir le thème:" << endl;
getline(cin, p_theme, '\n');
cout << "Veuillez saisir le titre:" << endl;
getline(cin, p_titre, '\n');
....
这就是控制台向我显示的内容
Veuillez saisir le thème:
Veuillez saisir le titre:
问题是我没有时间在第二个 cout 之前输入字符串“Theme”。我尝试了不同的方法,使用 char 缓冲区它不起作用我进入一个循环。
【问题讨论】:
-
欢迎来到 SO。你的程序应该是short self-contained compilable example,这会让事情变得更容易。
-
@Nate:答案包括格式化的提取
cin和getline。这里我们在cout上使用格式化的输出,它不应该对getline上的cin调用产生任何影响。 -
@Zeta:答案涵盖
getline(cin, ...)不等待用户输入,这似乎正是这里报告的问题。我不确定我们谁误读了这个问题。
标签: c++