使用c++写一个split函数
时间: 2024-06-10 13:07:28 浏览: 78
如何在c++中实现字符串分割函数split详解
5星 · 资源好评率100%
好的,使用C语言编写一个split函数,可以按照指定字符将字符串分割成子串。示例代码如下:
```
#include <stdlib.h>
#include <string.h>
char** split(char* str, char* delimiter) {
char** result = 0;
size_t count = 0;
char* tmp = str;
char* lastComma = 0;
char delim[2];
delim[0] = delimiter;
delim[1] = 0;
/* 遍历字符串,统计分割符的个数 */
while (*tmp) {
if (delimiter == *tmp) {
count++;
lastComma = tmp;
}
tmp++;
}
/* 统计完毕后,根据个数分配指针数组 */
count += lastComma < (str + strlen(str) - 1);
count++;
result = (char**)malloc(sizeof(char*) * count);
if (result) {
/* 开始拆分字符串 */
size_t idx = 0;
char* token = strtok(str, delim);
while (token) {
*(result + idx++) = strdup(token);
token = strtok(0, delim);
}
*(result + idx) = 0;
}
return result;
}
```
至于上面的笑话,我给您分享一个:我爱运动,特别是在收视率高的时候,比如奥运会、世界杯等。
阅读全文