int main(int argc, char** argv) { if (argc != 3) { printf("Usage: %s (list|array) \"Your text\"\n", argv[0]); return (EXIT_FAILURE); } else if (strcmp(argv[1], "list") == 0) { struct Element* text = arrayToList(argv[2], strlen(argv[2])); text = textProcessing(text); if (!text) { perror("The string mush contain at least two words\n"); return (EXIT_FAILURE); } printf("Text processed:\n"); printList(text); deleteList(text); return (EXIT_SUCCESS); } else if (strcmp(argv[1], "array") == 0) { T* text = arrayProcessing(argv[2]); if (!text) { perror("The string mush contain at least two words\n"); return (EXIT_FAILURE); } printf("Text processed:\n%s\n", text); free(text); return (EXIT_SUCCESS); } return (EXIT_FAILURE); }
Node * arrayToList(double *items,int size) { if (size == 0) return 0; else return join(items[0],arrayToList(items+1,size-1)); }