ncurses笔记(1)——ncurses库的介绍与安装
2016-03-01 03:03
519 查看
ncurses笔记(1)——ncurses库的介绍与安装
介绍
ncurses(new curses)是一套编程库,它提供了一系列的函数以便使用者调用它们去生成基于文本的用户界面。ncurses名字中的n意味着“new”,因为它是curses的自由软件版本。由于AT&T“臭名昭著”的版权政策,人们不得不在后来用ncurses去代替它。
ncurses是GNU计划的一部分,但它却是少数几个不使用GNU GPL或LGPL授权的GNU软件之一。
其实我们对ncurses本身并不陌生,以下几款大名鼎鼎的软件都用到过ncurses:
vim
emacs
lynx
screen
为了制作自己构想了一段时间的Roguelike的游戏,同时作为对《The C Programming Language》的实践,我开始接触ncurses并在此作笔记。
安装
Linux
以Debian为例(人生中第一个发行版)$ sudo apt-get install libncurses5-dev
在非Debian发行版中的安装方法以后会来补充
安装完毕后,我们写下如下代码:
//test.c #include <string.h> #include <ncurses.h> int main(int argc,char* argv[]){ initscr(); raw(); noecho(); curs_set(0); char* c = "Hello, World!"; mvprintw(LINES/2,(COLS-strlen(c))/2,c); refresh(); getch(); endwin(); return 0; }
然后使用gcc编译后执行看看效果,不要忘了加-lncurses哦。
$ gcc test.c -o test -lncurses $ ./test
不出意外的话结果如下:
Windows
ncurses貌似没有提供Windows平台的支持,不过作为代替,我们可以使用PDCurses。虽然最近一次的stable版本已经是08年的事情了,但使用起来暂时没有发现问题,可以对照着网上的ncurses的资料进行学习。如果不想自己编译,可以直接下载pdc34dllw.zip。
否则,下载PDCurses-3.4.tar.gz。以下只介绍下载了pdc34dllw.zip的情况。
将pdc34dllw.zip解压后,不出意外将得到下面这些文件:
以MinGW为例,
将所有.h文件放入MinGW的include目录中
将pdcurses.lib文件放入MinGW的lib目录中
将pdcurses.dll文件放到你的目标文件的同目录下(推荐)或者X:\Windows\SysWOW64目录中(不推荐)
配置完毕后,我们写下如下代码:
//test.c #include <string.h> #include <curses.h> int main(int argc,char* argv[]){ initscr(); raw(); noecho(); curs_set(0); char* c = "Hello, World!"; mvprintw(LINES/2,(COLS-strlen(c))/2,c); refresh(); getch(); endwin(); return 0; }
然后使用gcc编译,不要忘了加-lpdcurses哦。
gcc test.c -o test.exe -lpdcurses
不出意外的话运行结果如下:
那么接下来让我们开始动手做些有趣的事情吧。
相关文章推荐
- winform异型不规则界面设计的实现方法
- Android中设置只有程序第一次运行才显示的界面实现思路
- hta 实现的五子棋界面
- android开发之欢迎界面的小例子
- C#中载入界面的常用方法
- android编程实现局部界面动态切换的方法
- Android判断现在所处界面是否为home主桌面的方法
- Android编程实现泡泡聊天界面实例详解(附源码)
- android 引导界面的实现方法
- 自由软件 学习资料
- VC 界面库皮肤库相关信息珍藏
- error: No curses/termcap library found
- Android中界面实现全屏显示的两种方式
- 简单做出不丑设计
- extmail 界面修改
- 300款自由软件(Freeware)推荐+点评!
- QT程序启动界面的使用
- The Book of Qt 4 翻译: 2.2 界面和处理逻辑的分离
- 自由软件:何处风景最好?(1)