strtok_split_to_table
时间: 2023-10-04 16:04:58 浏览: 70
strrchr strtok_r C库函数使用
5星 · 资源好评率100%
`strtok_split_to_table` 是一个函数,用于将一个字符串按照指定的分隔符进行分割,并将分割后的子串存储到一个二维字符数组中。
函数的定义可能类似于:
```c
void strtok_split_to_table(char *str, char delim, char **table, int table_size);
```
其中,`str` 是要进行分割的字符串,`delim` 是分隔符,`table` 是存储分割后的子串的二维字符数组,`table_size` 是 `table` 的行数。
函数实现的大致思路是:
1. 使用 `strtok` 函数按照分隔符 `delim` 对字符串 `str` 进行分割;
2. 将分割后的每个子串存储到 `table` 的一行中,直到 `table` 的所有行都被填满或者 `strtok` 分割结束。
使用示例:
```c
#include <stdio.h>
#include <string.h>
void strtok_split_to_table(char *str, char delim, char **table, int table_size) {
int i = 0;
char *token;
token = strtok(str, &delim);
while (token != NULL && i < table_size) {
strcpy(table[i], token);
token = strtok(NULL, &delim);
i++;
}
}
int main() {
char str[] = "apple,banana,orange";
char *table[3];
int i;
for (i = 0; i < 3; i++) {
table[i] = (char *) malloc(10 * sizeof(char));
}
strtok_split_to_table(str, ',', table, 3);
for (i = 0; i < 3; i++) {
printf("%s\n", table[i]);
free(table[i]);
}
return 0;
}
```
输出:
```
apple
banana
orange
```
阅读全文