c++ string逗号分隔转数组
时间: 2023-09-01 18:07:20 浏览: 253
你可以使用 `std::stringstream` 和 `std::getline` 将逗号分隔的字符串转换为数组。下面是一个示例代码:
```c++
#include <iostream>
#include <string>
#include <sstream>
#include <vector>
int main() {
std::string str = "1,2,3,4,5";
std::vector<int> nums;
std::stringstream ss(str);
std::string token;
while (std::getline(ss, token, ',')) {
nums.push_back(std::stoi(token));
}
for (int num : nums) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果为:
```
1 2 3 4 5
```
在上面的代码中,我们先定义了一个字符串 `str`,它包含了逗号分隔的数字。然后我们定义了一个 `std::vector<int>` 类型的数组 `nums`,用来存储转换后的数字。接着,我们使用 `std::stringstream` 将字符串 `str` 传入,并使用 `std::getline` 函数按照逗号分隔符将字符串分割成多个子串,存储在 `token` 变量中。最后,我们将 `token` 转换为 `int` 类型,并将其添加到数组 `nums` 中。
最后,我们遍历数组 `nums` 并输出每个元素的值。
阅读全文