检查用户是否输入了空白 C++
Check if user input a blank c++
我需要制作一个循环,从用户那里获取三个字符串作为输入,如果没有输入则停止。
我的代码
while(true){
cout << "Enter string1 string2 string3: ";
getline(cin,s1, ' ');
if(s1.empty())
break;
getline(cin, s2, ' ');
getline(cin, s3);
}
如果我没有输入任何内容,getline 会等到我输入至少一个 space。如何让它在没有输入时停止?
我的建议:
- 阅读一行文字。
- 用直线构造一个
istringstream
。使用 istringstream
提取变量。
这是我的想法:
std::string line;
while ( getline(std::cin, line) )
{
std::istringstream str(line);
if ( !(str >> s1 >> s2 >> s3 ) )
{
break;
}
}
我需要制作一个循环,从用户那里获取三个字符串作为输入,如果没有输入则停止。 我的代码
while(true){
cout << "Enter string1 string2 string3: ";
getline(cin,s1, ' ');
if(s1.empty())
break;
getline(cin, s2, ' ');
getline(cin, s3);
}
如果我没有输入任何内容,getline 会等到我输入至少一个 space。如何让它在没有输入时停止?
我的建议:
- 阅读一行文字。
- 用直线构造一个
istringstream
。使用istringstream
提取变量。
这是我的想法:
std::string line;
while ( getline(std::cin, line) )
{
std::istringstream str(line);
if ( !(str >> s1 >> s2 >> s3 ) )
{
break;
}
}