为什么我不能在Linux上find<conio.h>?

可能重复:
如何在Linux中实现C的getch()函数?

我一直在寻找一个Linux版本的conio.h头文件,但没有find任何…

我使用gcc和文本编辑器Geany来编译我的C代码。

有没有办法替代它的function? 例如, getch()

谢谢

conio.h是在旧的MS-DOS编译器中用来创build文本用户界面的C头文件。 针对非DOS操作系统(例如Linux,Win32和OS / 2)的编译器提供了这些function的不同实现。

#include <curses.h>将为您提供几乎所有在conio.h中提供的function

首先需要安装nucurses

在基于deb的Distros中使用

sudo apt-get install libncurses5-dev libncursesw5-dev

并在基于rpm的发行版中使用

sudo yum install ncurses-devel ncurses

对于getch()类的函数,你可以试试这个

原来的conio.h是由Borland实现的,所以它不是C标准库的一部分,也不是由POSIX定义的。

但是这里是一个使用ncurses来完成这个工作的Linux实现 。

具有类似function的常用Linux库是ncurses 。

这是因为它不存在,因为它是有界限的Windows。

相反,使用<stdio.h>的标准函数,如getc

如果你想编写基于控制台的graphics用户界面,build议的ncurses库是好的,但我不认为这是你想要的。