C语言中获取用户输入的函数有scanf、getchar、gets。这些函数有一个共同的特点,就是他们在获取到用户的输入之后还需要一个回车键才能结束。
而我们在有些情况下需要得到用户的输入就及时做出反应,这个时候就用到了ncurse。
#include <curses.h> //要记得包含这个头文件
int main()
{
initscr(); //ncurses界面的初始化函数
printw("this is test"); //在ncurse模式下的printf
getch(); //等待用户输入,如果没有这句话,程序就退出了,看不到运行的结果,也就是看不到上面那句话
endwin(); //程序退出,调用改函数来回复shell终端的显示,如果没有这句话,shell终端字乱码,坏掉
return 0;
}
还有一个需要注意到的是ncurse的编译
CLC@Embed_Learn:~/curses$ gcc cursesdemo.c -lcurses -o scr
需要用到-lcurses.
打开curses.h头文件
CLC@Embed_Learn:~/curses$ vi /usr/include/curses.h
我们可以看到头文件中上下左右按键分别被定义为如下图:
还需要注意的是curses.h头文件中的keypad函数,是设置可以在stdscr中接受键盘的功能键。
分别用UP、DOWN、LEFT、RIGHT表示上下