#include
#define MAX_STRN 10
static char text[] = "aaaaaa\nbbb\nccccccc\nddddd\n";
char* give_string(char* string);
int main()
{
int i,scnt=0;
char seps[]="\n",*token;
char **str;
str = (char**)calloc(MAX_STRN,sizeof(char*));
scnt = 0;
token = (char*)strtok( text,seps );
while( token != NULL ){
printf("token[%d]:%s\n",scnt,token);
str[scnt] = give_string(token);
token = (char*)strtok( NULL, seps );
scnt ++;
}
printf("scnt = %d\n",scnt);
printf("[str]配列内容:\n");
for(i=0;i<scnt;i++){
printf("str[%d]:%s\n",i,str[i]);
}
for(i=0;i<scnt;i++) free(str[i]);
free(str);
return 0;
}
char* give_string(char* string)
{
char *tempp=(char*)calloc(strlen(string+1),sizeof(char));
strcpy(tempp,string);
return tempp;
}
|