C++;无意义表达式填充 我在VS 2013 Express(Windows桌面)中使用了一个简单的C++程序: #包括 #包括 使用名称空间std; int main() { 字符串mystr; 我想你是在寻找while(true),这只是一个无休止的循环,直到你打破它或返回它。它不会影响你的其他任何东西。

C++;无意义表达式填充 我在VS 2013 Express(Windows桌面)中使用了一个简单的C++程序: #包括 #包括 使用名称空间std; int main() { 字符串mystr; 我想你是在寻找while(true),这只是一个无休止的循环,直到你打破它或返回它。它不会影响你的其他任何东西。,c++,visual-c++,while-loop,expression,conditional-statements,C++,Visual C++,While Loop,Expression,Conditional Statements,我想你是在寻找while(true)这只是一个无止境的循环,直到你中断它或返回它。它不会影响你的其他任何事情。你可以简单地使用while(true)来无限期地执行循环。如果你想让它停止,你必须中断或返回你可以简单地使用while(true)循环无限期执行。如果你想让它停止,你必须中断或返回我想你想而(mystr2!=“y”&&mystr2!=“n”&&mystr2!=mystr) 这样,如果输入不是“y”、“n”或mystr,它将继续循环。我想您需要while(mystr2!=“y”&&myst

我想你是在寻找
while(true)
这只是一个无止境的循环,直到你
中断它或
返回它。它不会影响你的其他任何事情。

你可以简单地使用
while(true)
来无限期地执行循环。如果你想让它停止,你必须
中断
返回
你可以简单地使用
while(true)
循环无限期执行。如果你想让它停止,你必须
中断
返回
我想你想
而(mystr2!=“y”&&mystr2!=“n”&&mystr2!=mystr)

这样,如果输入不是“y”、“n”或mystr,它将继续循环。

我想您需要
while(mystr2!=“y”&&mystr2!=“n”&&mystr2!=mystr)

这样,如果输入不是“y”、“n”或mystr,它将保持循环。

getline
返回对它所读取的流的引用。并且所有流都提供到
bool
的隐式转换,如果流有效(即,如果上一个操作成功),则结果为
true
.所以这样做很惯用:

string mystr2;

while (getline(cin, mystr2))
{
    if (mystr2 == "y")
    {
        cout << "Thank you, Idiot" << endl;
    }
    else
    {
        if (mystr2 == mystr)
        {
            cout << "You found the hidden secret! The hidden secret is..... I dunno. It is what ever you want it to be. \n \nProbably a let down." << endl;
        }
        else
        {
            if (mystr2 == "n")
            {
                cout << "Ok then, " << mystr << endl;
            }
            else
            {
                cout << "Please enter a valid response (y/n)" << endl;
            }
        }
    }
}
字符串mystr2;
while(getline(cin,mystr2))
{
如果(mystr2==“y”)
{

cout
getline
返回一个对它正在读取的流的引用。所有流都提供一个到
bool
的隐式转换,如果流有效(即,如果最后一个操作成功),这将导致
true
。因此,这样做非常惯用:

string mystr2;

while (getline(cin, mystr2))
{
    if (mystr2 == "y")
    {
        cout << "Thank you, Idiot" << endl;
    }
    else
    {
        if (mystr2 == mystr)
        {
            cout << "You found the hidden secret! The hidden secret is..... I dunno. It is what ever you want it to be. \n \nProbably a let down." << endl;
        }
        else
        {
            if (mystr2 == "n")
            {
                cout << "Ok then, " << mystr << endl;
            }
            else
            {
                cout << "Please enter a valid response (y/n)" << endl;
            }
        }
    }
}
字符串mystr2;
while(getline(cin,mystr2))
{
如果(mystr2==“y”)
{

我可以建议将两个
getline
调用都移动到条件中去吗?你是什么意思?@chrisAgnew充实了它。我建议将两个
getline
调用都移动到条件中去。你是什么意思?@chrisAgnew充实了它。我该如何添加中断或返回?@JoeJoe2416你可以简单地在y中调用
break;
我们的循环在任何你想让它停止的地方。它将跳过循环中其后的任何内容,不再迭代(它不会退出程序).
Return 0;
将在
main
中返回,从而退出整个程序。如何添加中断或返回?@JoeJoe2416您只需在循环中的任何位置调用
break;
。它将跳过循环中其后的任何内容,而不会再次迭代(它不会退出程序).
返回0;
将在
主程序中返回,从而退出整个程序。