C语言拆分逗号分割的字符串
时间: 2023-08-17 07:06:08 浏览: 345
C代码 根据目标字符分割任意字符串
可以使用C语言中的strtok函数对逗号分割的字符串进行拆分。strtok函数可以按照指定的分隔符对字符串进行拆分,并返回被拆分后的子字符串。具体使用方法如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "apple,banana,orange";
char *ptr = strtok(str, ","); // 使用逗号作为分隔符
while (ptr != NULL) {
printf("%s\n", ptr);
ptr = strtok(NULL, ","); // 继续分隔
}
return 0;
}
```
其中,先定义一个字符数组str用于存放逗号分隔的字符串,然后使用strtok函数对其进行拆分。在第一次调用strtok函数时,需要传入要拆分的字符串和分隔符,之后每次调用strtok函数时,第一个参数为NULL,表示继续对剩余字符串进行分隔。每次调用strtok函数时,返回的是被拆分的子字符串的指针,如果没有子字符串了,则返回NULL。可以使用while循环来遍历所有子字符串并输出。
上述代码的输出结果为:
```
apple
banana
orange
```
注意,strtok函数会改变原始字符串的内容,所以如果需要保留原始字符串,需要先将其复制到另一个字符数组中再进行拆分。另外,如果要拆分的字符串中有多个连续的分隔符,strtok函数会将它们视为一个分隔符处理,如果需要处理连续的分隔符,可以考虑使用其他函数或自己编写拆分函数。
阅读全文