有一个字符串符合以下特征("abcdef,ggggg,eeeee,hhhhhh,11111,"),
要求写一个函数(接口),输出以下结果
1) 以逗号分割字符串,形成二维数组,并把结果传出;
2) 把二维数组行数运算结果也传出。
请自己定义一个接口(函数)。
要求1:能正确表达功能的要求,定义出接口(函数);
要求2:正确实现接口(函数),并实现功能;
要求3:编写正确的测试用例。
// C代码
#define _CRT_SECURE_NO_WARNINGS
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include<ctype.h>
#include<assert.h>
int spit(char *buf1,char c,char buf2[100][300],int *count)
{
char *p = NULL;
char *q = NULL;
int i = 0;
int ncount = 0;
assert(NULL!=buf1);
assert(NULL != buf2);
assert(NULL != count);
p = buf1;
q = buf1;
p = strchr(buf1,c);
if (p == NULL)
{
return -1;
}
while (p != NULL)
{
memcpy(buf2[ncount], q, p - q);
buf2[ncount][p - q]='\0';
p++;
q = p;
p= strchr(p, c);
ncount++;
}
*count = ncount;
return 0;
}
int main()
{
char *p1 = "abcdef,ggggg,eeeee,hhhhhh,11111,";
char cTem = ',';
int count;
int ret = 0; int i = 0;
char myArray[100][300];
ret = spit(p1,cTem, myArray,&count);
if (ret != 0)
{
printf("erro:%d\n",ret);
return ret;
}
for (i = 0; i < count; i++)
{
printf("%s \n", myArray[i]);
}
system("pause");
return;
}