CString数字字符串,分隔转换成vector<int>
时间: 2024-02-22 11:59:42 浏览: 61
C++字符串转换
好的,我可以帮你处理这个问题。你可以将CString类型的数字字符串先转换为标准C++字符串string,然后再按照上述方法将其转换为vector<int>。下面是一个示例代码:
```cpp
#include <iostream>
#include <sstream>
#include <vector>
#include <string>
using namespace std;
vector<int> cStringToVector(const CString& s) {
string str(s);
stringstream ss(str);
vector<int> v;
int num;
char c;
while (ss >> num) {
v.push_back(num);
if (ss >> c && c != ',') {
break;
}
}
return v;
}
int main() {
CString s = "1,2,3,4,5";
vector<int> v = cStringToVector(s);
for (int i : v) {
cout << i << " ";
}
cout << endl;
return 0;
}
```
在上述代码中,我们定义了一个名为cStringToVector的函数,它将输入的CString类型的数字字符串转换为vector<int>。在函数中,我们首先将CString类型的数字字符串转换为标准C++字符串string类型,然后按照上述方法将其转换为vector<int>。在读取数字后,我们还需要读取一下逗号,以便在读取下一个数字时正确处理。最后,我们返回生成的vector。
在主函数中,我们使用一个示例数字字符串"1,2,3,4,5"调用cStringToVector函数,并将结果打印到屏幕上。
希望这能对你有所帮助!
阅读全文