繁体   English   中英

std :: cin的输入无效

[英]Invalid input for std::cin

以下代码旨在连接用户输入的单词。

#include <iostream>
#include <string>


int main() {
    // insert code here...

    std::string s;
    std::string concString;
    while (std::cin >> s)
    {
        concString = concString + s;
    }
    std::cout << concString << std::endl;
    return 0;
}

我在执行过程中陷入了这个while循环中,因此无法打印连接的字符串。 如何退出此循环? 什么是std :: cin的无效输入?

通常,这样的循环在文件末尾停止,而不是无效的输入。

在* nix环境中,通常可以使用CTRL + d和Windows控制台CTRL + z将文件结尾发送到终端。

参见https://stackoverflow.com/a/16136924/1084944

但是,您可以实现自己的其他方式来表示输入结束。 例如,让用户在完成时输入空白行,或者单词quit等等。 选择一个之后,您应该将其传达给用户,并且您将必须构建循环以能够检测到这些情况并退出。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM