Касательно conio.h
DOS работает с консолью - видеокарта+монитор+клава - завязанной на локальную машину. Соответственно можно из программы выводить непосредственно в видеопамять консоли, взаимодействовать с устройством "клавиатура" непосредственно и т.п.
UNIX - системы работают с терминалами. Терминал - это не консоль ДОС. Терминалы первоначально были отдельными железяками, соединенными с основной системой по последовательной линии - это также, как внешний модем, подсоединенный к COM порту. Соответственно и речи быть не может, чтобы получить непосредственный доступ к памяти, как это делалось в досовом conio. Управление терминалом осуществляется при помощи Эскейп-последовательностей, причем они могут быть разными у разного оборудования. Чтобы лишний раз не изобретать велосипед, была создана библиотека curses. Она позволяет скрыть от несчастного программиста аппаратные особенности всего того множество терминалов, которые наплодили производители за все эти годы и сосредоточится на действительно нужных вещах. Если требуется создание приложений, где используются возможности взаимодействия пользователей с терминалом в интерактивном режиме, нужны окошки и всякие подобные красивости, то использование библиотеки curses будет очень правильным выбором. На www.opennet.ru была хорошая статья про это.
|