Он сначала буферезует ввод, сволочь, да и не так как надо работае
Ты меня пугаешь
Запомни: терминал != клава+монитор.
Для начала почитай man ncurses. И не жди что все будет понятно - это справочная дока, а не обучалка. Буферизация вывода и ввод одиночных символов - все это делает ncurses.
Несложные примеры прилогаются к дистрибутиву ncurses.
А перемещаться через ANSI?? А если терминал ANSI не поддерживает?? А отслеживания ввода управляющих клавиш как предлагаешь сделать?? Мне IOCTL подавай, или типа того... Тем более как вводить по КЛАВИШАМ, а не по символам? (не через stdio).
Понятия "клавиша" там нет - ведь это терминал, а не клава - в обе стороны обмен идет _символами_. Терминальная программа одинакого работает на локальном компьютере, на терминале через com-порт (или модем) и сетевых соединениях (telnet,rlogin,ssh и т.п).
И как это - "не поддерживает ANSI"? Ansi совместим (по выводу) с vt100 и многими другими. Если и этого нет - то это "тупой терминал" (dumb) и ни каких окошек там не нарисуешь.