在c ++中考虑这段代码 -
string str;
cin>>str;
如果我只是在这个阶段按回车键,指针就会移动到下一行,但即使我故意要输入空字符串,也要等待输入。
我的目标是读一个字。如果按Enter键,则应将其视为空字符串。
答案 0 :(得分:3)
使用std::getline
:
std::string str;
std::getline(std::cin, str);
答案 1 :(得分:0)
有两种方法:
使用std::getline()
std::string str;
getline(cin, str);
或使用std::noskipws
std::string str;
cin >> noskipws >> str;
不要忘记使用cin.ignore()
。