C++,cin,直到不再使用 while 循环在线输入

标签 c++ input console cin

我的 C++ 程序有问题。我重新格式化并显示用户在控制台中输入的单词。如果用户输入: Hi I am bob。用户将在控制台输入 bob 后按回车键。我将重新格式化并以新格式重新打印它。问题是在输入该控制台行上的所有单词之前,我不想显示更多输入的消息。我的当前循环要么在每个单词后显示输入请求,要么根本不显示。这取决于我是否包含提示。我需要让一个 while 循环处理每个单词并输出它并在最后一个单词后停止。什么是 bool 参数?我包含我的代码以供引用。

int _tmain(int argc, _TCHAR* argv[])
{

    int b;
    string input;
    string output ;
    int check = 1;

    while (check){
        cout << "Enter in one or more words to be output in ROT13: " << endl;
        cin >> input;
        while(my issue is here){

            const char *word = input.c_str();

            for (int i = 0; i < input.length(); i++){

                b = (int)word[i];
                if (b > 96){
                    if (b >= 110){
                        b = b - 13;
                    }
                    else {
                        b = b + 13;
                    }

                    output += ((char)b);
                }

                else
                {
                    if (b >= 78){
                        b = b - 13;
                    }
                    else {
                        b = b + 13;
                    }

                    output += ((char)b);
                }







            } 
            cout << output << endl;
            output = "";
            cin >> input;

        }

            check = 0;

    }

    return 0;
}

最佳答案

如果没有更多的输入行,cin 函数将返回 false。您可以执行以下操作以读取直到输入结束,或者如果您要重定向 cin 以从文件读取,则为 eof。

int a;
while(cin >> a){
    //Your loop body
}

关于C++,cin,直到不再使用 while 循环在线输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29381224/

相关文章:

Java:如何在控制台和文件中打印控制台的每个输出?

c# - 我的求解数学方程式的程序是否有任何错误?

node.js - 如何更改 gulp-debug 的输出颜色?

与当前对象相关的 C++ 指针和地址说明

c++ - 我什么时候应该真正使用 noexcept?

css - 提交按钮顶部的额外填充

c - 在C中为两种不同的变量类型输入一次

java - 难以正确读取 Java 控制台的输入

c++ - 有没有办法,或者说 'accepted'是什么办法让所有windows都运行在当前进程下?

c++ - 使用 C++ 通过互联网发送 vector