char *getline(char *input) { char *out; char prev; int i, len = strlen(input) + 1; for(i = 0; i < len; ++i) { prev = input[i]; if(prev == '\n' || prev == '\r' || prev == '\0') { input[i] = '\0'; out = strdup(input); input[i] = prev; return out; } } return NULL; }