int sort_word(char **s1, char **s2) { int i; char *tmp1; char *tmp2; i = 0; tmp1 = lowerize(*s1); tmp2 = lowerize(*s2); while ((*s1)[i] != '\0' && (*s2)[i] != '\0') { if (tmp1[i] > tmp2[i]) { swap_str(s1, s2); free_lower(tmp1, tmp2); return (1); } else if (tmp1[i] == tmp2[i]) i++; else { free_lower(tmp1, tmp2); return (0); } } free_lower(tmp1, tmp2); return (0); }
void parse_token(char* delim, char* token, char** args, int* i) { char* str2; char* subtoken; for (str2 = token; ; str2 = NULL, (*i)++) { if (!(subtoken = strtok(str2, delim))) break; *(args+*i) = subtoken; *(args+*i+1) = delim; } swap_str(args+*i-1, args+*i); }
void sort_list(t_list **list) { t_list *tmp; int swapped; swapped = 1; while (swapped == 1) { tmp = *list; swapped = 0; while (tmp && tmp->next) { if (my_strcmp(tmp->data, tmp->next->data) > 0) { swapped = 1; swap_str(&tmp->data, &tmp->next->data); } tmp = tmp->next; } } }