char ** parseargs(char *s, int * argc)
{
char *token = 0;
char **array = 0;
char * temp = NULL;
int index = 0;
int length = (int) strlen(s);
if (0 == argc || length < 1)
{
return NULL;
}
char *params = malloc(length + 1);
memcpy(params, s, strlen(s) + 1);
temp = strtok(s, " ");
*argc = 0;
while (temp != 0)
{
temp = strtok(NULL, " ");
(*argc)++;
}
array = malloc((*argc) * sizeof(char*));
token = strtok_r(params, " ", &temp);
while (token != NULL)
{
length = strlen(token) + 1;
array[index] = (char *) malloc(length);
memcpy(array[index], token, length);
index++;
token = strtok_r(NULL, " ", &temp);
}
free(params);
return array;
}// end makeArgs
{
char *token = 0;
char **array = 0;
char * temp = NULL;
int index = 0;
int length = (int) strlen(s);
if (0 == argc || length < 1)
{
return NULL;
}
char *params = malloc(length + 1);
memcpy(params, s, strlen(s) + 1);
temp = strtok(s, " ");
*argc = 0;
while (temp != 0)
{
temp = strtok(NULL, " ");
(*argc)++;
}
array = malloc((*argc) * sizeof(char*));
token = strtok_r(params, " ", &temp);
while (token != NULL)
{
length = strlen(token) + 1;
array[index] = (char *) malloc(length);
memcpy(array[index], token, length);
index++;
token = strtok_r(NULL, " ", &temp);
}
free(params);
return array;
}// end makeArgs