C++分割string字符串
时间: 2023-08-14 16:03:14 浏览: 148
C++常用字符串分割方法实例汇总
5星 · 资源好评率100%
在 C++ 中,可以使用 `std::string` 类型和 `std::stringstream` 类型来分割字符串。
方法一:使用 `std::stringstream`
```cpp
#include <iostream>
#include <string>
#include <sstream>
#include <vector>
int main() {
std::string str = "hello world how are you";
std::stringstream ss(str);
std::vector<std::string> tokens;
std::string token;
while (std::getline(ss, token, ' ')) {
tokens.push_back(token);
}
for (const auto& t : tokens) {
std::cout << t << std::endl;
}
return 0;
}
```
输出:
```
hello
world
how
are
you
```
方法二:使用 `std::string` 的 `find` 函数和 `substr` 函数
```cpp
#include <iostream>
#include <string>
#include <vector>
int main() {
std::string str = "hello world how are you";
std::vector<std::string> tokens;
size_t pos = 0;
std::string token;
while ((pos = str.find(' ')) != std::string::npos) {
token = str.substr(0, pos);
tokens.push_back(token);
str.erase(0, pos + 1);
}
tokens.push_back(str);
for (const auto& t : tokens) {
std::cout << t << std::endl;
}
return 0;
}
```
输出:
```
hello
world
how
are
you
```
阅读全文