C++ 输入未知长度string字符串遇特定字符终止
时间: 2024-11-04 16:11:27 浏览: 4
在C++中,如果你想输入一个不确定长度的字符串直到遇到某个特定字符为止,通常可以使用`std::getline()`函数配合循环来实现。`std::getline()`函数从标准输入流(如键盘输入)读取直到遇到换行符`\n`或指定分隔符,默认是空格。不过,如果你想要在遇到特定字符(比如`'\0'`,ASCII码的结束符)就停止,你可以自定义处理逻辑。
这里是一个简单的示例:
```cpp
#include <iostream>
#include <string>
int main() {
std::string input;
char terminator = '\0'; // 你想要用于终止的字符
while (true) {
std::cout << "请输入字符串,直到遇到 '" << terminator << "' 结束:";
getline(std::cin, input);
if (input.back() == terminator) { // 检查字符串是否以指定字符结尾
break; // 如果是,则跳出循环
}
}
std::cout << "你输入的字符串是:" << input << std::endl;
return 0;
}
```
在这个例子中,程序会持续提示用户输入,直到用户输入的字符串以`'\0'`结束。然后程序会打印出输入的字符串并退出。
阅读全文