如何将一个数组中的字符串按照逗号分成四部分
时间: 2024-02-20 15:59:26 浏览: 24
在 C 语言中,可以使用 `strtok` 函数将一个字符串按照指定的分隔符分解成若干个子字符串。如果要将一个数组中的字符串按照逗号分隔成四部分,可以按照下面的方式实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char arr[][20] = {"part1,part2,part3,part4", "hello,world,good,morning"};
char* token;
char* delim = ",";
int i, j;
// 遍历数组中的每个字符串
for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) {
printf("string %d:\n", i + 1);
// 依次遍历四个子字符串
j = 1;
token = strtok(arr[i], delim);
while (token != NULL && j <= 4) {
printf("part%d: %s\n", j, token);
token = strtok(NULL, delim);
j++;
}
}
return 0;
}
```
在上面的代码中,我们定义了一个二维字符数组 `arr`,其中包含了两个字符串。然后我们遍历数组中的每个字符串,使用 `strtok` 函数将其按照逗号分隔成若干个子字符串。在循环中,我们依次遍历每个子字符串,输出其内容。
输出结果为:
```
string 1:
part1: part1
part2: part2
part3: part3
part4: part4
string 2:
part1: hello
part2: world
part3: good
part4: morning
```
可以看到,我们成功地将一个数组中的字符串按照逗号分隔成了四部分。注意,在使用 `strtok` 函数时,需要将每个字符串作为第一个参数传递给函数,并在后续的调用中将第一个参数设置为 `NULL`,以便函数能够继续处理字符串的剩余部分。