Ncurses入门-安装与使用

Posted Evan_Lai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ncurses入门-安装与使用相关的知识,希望对你有一定的参考价值。

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();关闭窗口

至此,我们完成这一内容

以上是关于Ncurses入门-安装与使用的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 CMake 和 ncurses 进行编译

使用 ncurses 而不安装它

ubuntu16.04安装ncurses-devel

ncurses color_content()给了我错误的值

Linux系统下安装ncurses库

htop