Почему я не могу найти <conio.h> в Linux?
Возможный дубликат:
Как реализовать функцию getch() C в Linux?
Что является эквивалентом Linux
версия conio.h
заголовочный файл из MS-DOS?
Есть ли способ заменить его функциональность? напримерgetch()
я использую
gcc
и текстовый редакторGeany
составитьC
код.
4 ответа
conio.h
это C
заголовочный файл, используемый в старых компиляторах MS-DOS для создания текстовых пользовательских интерфейсов. Компиляторы, предназначенные для операционных систем без DOS, таких как Linux, Win32 и OS/2, обеспечивали различные реализации этих функций.
#include <curses.h>
даст вам почти все функции, которые были предоставлены в conio.h
нукеры должны быть установлены в первую очередь
В Deb на основе дистрибутивов использовать
sudo apt-get install libncurses5-dev libncursesw5-dev
И в основанных на rpm дистрибутивах
sudo yum install ncurses-devel ncurses
За getch()
класс функций, вы можете попробовать это
Оригинальный conio.h был реализован Borland, поэтому он не является частью стандартной библиотеки C и не определяется POSIX.
Но вот реализация для Linux, которая использует ncurses для выполнения этой работы.
Это потому, что это не существует, так как он привязан к Windows.
Используйте стандартные функции из <stdio.h>
вместо этого, например, getc
Предлагаемая библиотека ncurses хороша, если вы хотите писать консольные графические интерфейсы, но я не думаю, что это то, что вам нужно.
Популярной библиотекой Linux, имеющей аналогичную функциональность, будут ncurses.