Да, и конечно же, нужно проверить что len > 0. Это до того как мы начнём в buf что-то изменять. > len = strlen(buf); > > if (buf[len-1] != '\n') { > fprintf(stderr, "input line too long\n"); > ... > } > > buf[--len] = '\0'; -- Г.А.