[英]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.