dm211 писал(а):...буфер на сколько символов, ответ всегда разной длины приходит...
Буфер нужен размером
N+1, где
N - максимальная длина ожидаемой на приеме строки.
dm211 писал(а):так ... ничего не работает: if(buffer=="что-то")...
Разумеется - в Си нет ни строковых типов, ни строковых операций. Эквивалентных действий можно добиться применением
strcmp(), как я показывал выше.
dm211 писал(а):Хотелось бы увидеть готовый рабочий код.
А здесь до готового кода - только
gets() добавить.
Прерывание помещает приходящие символы в буфер,
getch() - достает их оттуда, а
gets() - вызывает
getch() (
помещая результат в строку) пока не получит из неё символ конца строки. И всех делов. Правда, при таком подходе "в лоб" процессор будет впустую молотить все то время (минус время работы прерываний), пока идёт строка, но для первой версии и этого хватит.