Ncurses入门-(一)安装与使用
Ncurses是什么?
Ncurses是一个能提供功能键定义(快捷键),屏幕绘制以及基于文本终端的图形互动功能的动态库。
安装Ncurses
我们可以运行以下命令在Debian系的Linux系统下安装Ncurses:
$ sudo apt-get install libncurses5-dev
My First Window
安装成功以后,我们在try.c
里写如下代码:
//try.c
#include <string.h>
#include <ncurses.h>
int main(int argc,char* argv[]){
initscr();
raw();
noecho();
curs_set(0);
char* c = "My First Window";
mvprintw(LINES/2,(COLS-strlen(c))/2,c);
refresh();
getch();
endwin();
return 0;
}
保存后我们编译以上代码:
$ gcc try.c -o try -lncurses
别忘了-lncurses
接着运行./try
,你能看到如下效果
解释以上代码:initscr();
初始化curses窗口raw();
这个函数会阻止字符缓冲,令程序即时处理键盘输入,一些终端命令(中断[Ctrl-c],挂起[Ctrl-z])也会被交给程序处理noecho();
屏蔽输入字符显示,键盘输入的字符将不被显示curs_set(0);
调用会屏蔽掉物理指针mvprintw(LINES/2,(COLS-strlen(c))/2,c);
输出字符串,三个参数分别为x位置,y位置和字符指针
refresh();
刷新屏幕endwin();
关闭窗口
至此,我们完成这一内容