如何用逗号拆分c中的字符串

如何用逗号拆分c中的字符串,c,string,split,C,String,Split,我创建了一个用逗号分割字符串的函数 #包括 #包括 #包括 字符分割_行[8][50]; 无效拆分(字符*行){ printf(“第9行\n”); char*part=strtok(行“,”); printf(“第11行\n”); for(int i=1;istrtok()将直接修改传递的原始字符串 不能修改字符串文字 char *line = "123,456,789"; 应该是可修改的数组 char line[] = "123,456,789";

我创建了一个用逗号分割字符串的函数

#包括
#包括
#包括
字符分割_行[8][50];
无效拆分(字符*行){
printf(“第9行\n”);
char*part=strtok(行“,”);
printf(“第11行\n”);
for(int i=1;i
strtok()
将直接修改传递的原始字符串

不能修改字符串文字

char *line = "123,456,789";
应该是可修改的数组

char line[] = "123,456,789";

另外,在执行strcpy(分割线[i],部分)
之前,不要忘记检查
part
是否为
NULL
,,它可以工作,谢谢!但是我如何以这种方式使用函数
split(“123456789”);
。它具有相同的结果
分割错误(内核转储)
然后将传递的字符串复制到
split
中,并将其用于
strtok
char line[] = "123,456,789";