vs2010如何把CString 数据类型“,”隔开的字符串存入int数组中
时间: 2024-02-22 12:00:19 浏览: 155
C++ 分解字符串
在 Visual Studio 2010 中,您可以使用以下代码将一个 CString 类型的逗号分隔的数字字符串存入一个 int 数组中:
```c++
#include <vector>
#include <string>
#include <sstream>
void splitCStringToIntArray(CString str, int arr[], int size)
{
std::stringstream ss(CW2A(str));
std::string item;
int i = 0;
while (std::getline(ss, item, ',') && i < size)
{
arr[i++] = std::stoi(item);
}
}
```
这个函数使用了 stringstream 和 getline 函数来实现分隔字符串的功能,其中 CW2A 函数用于将 CString 转换为 char* 类型。在遍历分隔后的字符串时,我们使用 std::stoi 函数将字符串转换为整数,并将其存储到 int 数组中。注意,这个函数需要传入 int 数组的大小,以防止数组越界。
您可以调用这个函数,并传入需要分隔的 CString 字符串和 int 数组,例如:
```c++
CString str = _T("1,2,3,4,5");
int arr[5] = {0};
splitCStringToIntArray(str, arr, 5);
```
这个例子中,arr 将会保存分隔后的五个整数 1,2,3,4 和 5。
阅读全文