C++字符串空格遇到分隔怎么实现?
时间: 2024-10-06 19:02:10 浏览: 33
CPP.rar_cpp删除空格
在C++中,如果你想要处理字符串并根据空格将其分割成多个单词,你可以使用`std::string`的内置功能,特别是`find()`函数来查找空格的位置,然后结合`substr()`函数来提取每个子串。以下是一个简单的示例:
```cpp
#include <iostream>
#include <sstream>
std::vector<std::string> splitString(const std::string &str) {
std::istringstream iss(str);
std::vector<std::string> tokens;
std::string token;
while (iss >> token) {
if (!token.empty()) { // 如果不是空格,则添加到结果中
tokens.push_back(token);
}
}
return tokens;
}
int main() {
std::string input = "Hello World, This is a test string.";
std::vector<std::string> words = splitString(input);
for (const auto& word : words) {
std::cout << word << std::endl;
}
return 0;
}
```
这个`splitString`函数会返回一个包含所有非空格单词的`std::vector`。如果想按照空格进行分隔,可以直接使用逗号`,`作为分隔符,只需稍微修改`while`循环条件即可。
阅读全文