C++如何将字符串1,2,3,4分开
时间: 2024-09-18 08:04:22 浏览: 35
在C++中,如果你有一个包含逗号分隔数字的字符串,你可以使用`std::stringstream`或者`std::split`函数将其拆分成单个整数。这里是一个例子,使用`std::stringstream`:
```cpp
#include <sstream>
#include <vector>
std::string str = "1,2,3,4";
std::vector<int> numbers;
// 使用 stringstream 将字符串转换为数字
std::istringstream iss(str);
int num;
while (iss >> num) {
numbers.push_back(num);
}
// 现在numbers包含了[1, 2, 3, 4]
```
如果你在C++17及以上版本,并想使用标准库中的算法,可以使用`std::split`:
```cpp
#include <algorithm>
#include <iterator>
#include <sstream>
#include <vector>
std::string str = "1,2,3,4";
std::vector<std::string> tokens;
std::istringstream iss(str);
std::copy(iss, iss, std::back_inserter(tokens));
// 使用std::stoi将每个字符串转换成整数
std::vector<int> numbers;
for (const auto& token : tokens) {
numbers.push_back(std::stoi(token));
}
// 同样,numbers现在包含了[1, 2, 3, 4]
```
阅读全文