要说的内容是curses库,我们主要说它的用法。闲话休说,言归正转。
下面是我利用curses函数库写的一个显示棋盘的小程序,请大家参考:
#include<unistd.h>
#include<stdlib.h>
#include<ncurses.h>
int main()
{
int i;
initscr(); //初始化屏幕
if(!has_colors()) //确认终端是否支持彩色显示
{
endwin();
printf("can't support color \n");
return 0;
}
if(start_color() != OK) //确认初始化彩色显示是否成功
{
endwin();
printf("can't initialize color \n");
return 0;
}
init_pair(3,COLOR_RED, COLOR_WHITE); //设置颜色对前景红色,背景白色
attrset(COLOR_PAIR(3)); //使用刚才设置的颜色
for(i=0; i< 18; i+=2) //画横线和竖线
{
mvvline(9,2+i,'|',9);
mvvline(9,2+i+1,'_',9);
}
refresh(); //刷新屏幕,以便显示内容
getch(); //等待用户输入
sleep(2); //暂停两秒
endwin(); //释放屏幕相关的资源
return 0;
}
把上面的代码保存成C语言源文件,然后使用gcc编译,编译时需要使用l选项(lncurses).编译完后的运行结果如下图所示:
我本来是想使用curses库画一些图形,使用后发现,它的图形功能不强,而且使用不方便,因此,不准备在它上面花费过多的时间和精力。鉴于这个原因,我没有详细介绍其中的原理和使用方法,大家可以参考代码中的注释,了解简单的用法。
本文永久更新地址://m.ajphoenix.com/linux/25011.html