直接写在主函数里了。。。。。
#include
using namespace std;
int main()
{
char a[100];
cout<< "输入字符串:"<< endl;
cin>> a;
char b[10][100];
int start=0,first=0,size=0;
for (int j=0;j<10;j++)//循环保证取满b字符
{
while(true)//循环每一个以逗号分割的部分
{
if (a[start]==',')
{
memcpy(b[j],a+first,size);
b[j][size]=0;
size=0;//长度清0
start++;//移动到逗号后
first=start;//记录下一次的起始位置
break;
}
else
{
start++;//不是逗号,保证长度增加和位置后移
size++;
}
if (start==strlen(a))//讨论最后一个逗号后面的字符串
{
memcpy(b[j],a+first,size);
b[j][size]=0;
break;
}
}
}
for (int m=0;m<10;m++)
cout<< b[m]<< " ";
return 0;
}
/*
函数补充
memcpy(c,a+i,4); //a+i是a中从第i+1个开始赋值4个给c
c[4]=0; //自己填充的字符串要人为添加\0
*/
是char还是string啊?不过都一样的了 原理就是检测逗号 检测到第一个逗号后把逗号之前的所有字符储存出来,删除这个逗号之前的元素然后继续检测下一个,一直下去
能不能用string类型,用那个比较简单
用char*的话比较麻烦
JAVA里面有一个split方法 不知道C++里面有没有