以下代码用于连接用户输入的字词。
#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的无效输入?
答案 0 :(得分:0)
通常情况下,这样的循环会被文件末尾停止,而不是无效的输入。
在* nix环境中,您通常可以使用 CTRL + d 将文件结尾发送到终端,并在Windows控制台上 CTRL < / KBD> + ž
请参阅https://stackoverflow.com/a/16136924/1084944
但是,您可以实施自己的其他方式来表示输入结束。例如,让用户在完成后输入空白行,或单词quit
等。一旦你选择了一个,你应该将它传达给用户,你必须构建你的循环,以便能够检测这些条件并退出。