一个数组拆分为N个数组
请问有这样一个字符串数组: "123 123 123 \n3 45\n789\n\123KB "
在LINUX下用C语言怎样来根据换行符 '\n ',把这个数组转化为四个数组呢?
假如这个数组很大,有几十个 '\n ',有什么高效一点的方法.请高手指教一下.
[解决办法]
一次循环就可以搞定的问题,不要担心效率。
[解决办法]
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
int main()
{
char tmp[]= "123 123 123 \n3 45\n789\n\123KB ";
char str[4][20]={0}, *p;
int i,len=0;
for(i=0; i <4; i++)
{
p=strtok(tmp+len, "\n ");
strcpy(str[i], p);
len+=strlen(p)+1;
}
for(i=0; i <4; i++)puts(str[i]);
system( "PAUSE ");
return 0;
}