看官们,咱们今天要说的内容还是curses库,我们今天主要说它的用法。闲话休说,言归正转。
下面是我利用curses函数库写的一个显示棋盘的小程序,请大家参考:
1 #include<unistd.h>
2 #include<stdlib.h>
3 #include<ncurses.h>
4
5 int main()
6 {
7 int i;
8
9 initscr(); //初始化屏幕
10
11 if(!has_colors()) //确认终端是否支持彩色显示
12 {
13 endwin();
14 printf("can't support color \n");
15 return 0;
16 }
17
18 if(start_color() != OK) //确认初始化彩色显示是否成功
19 {
20 endwin();
21 printf("can't initialize color \n");
22 return 0;
23 }
24
25 init_pair(3,COLOR_RED, COLOR_WHITE); //设置颜色对前景红色,背景白色
26 attrset(COLOR_PAIR(3)); //使用刚才设置的颜色
27
28 for(i=0; i< 18; i+=2) //画横线和竖线
29 {
30 mvvline(9,2+i,'|',9);
31 mvvline(9,2+i+1,'_',9);
32 }
33
34 refresh(); //刷新屏幕,以便显示内容
35 getch(); //等待用户输入
36 sleep(2); //暂停两秒
37
38 endwin(); //释放屏幕相关的资源
39
40 return 0;
41 }
42
把上面的代码保存成C语言源文件,然后使用gcc编译,编译时需要使用l选项(lncurses).编译完后的运
行结果如下图所示:
我本来是想使用curses库画一些图形,使用后发现,它的图形功能不强,而且使用不方便,因此,不准备
在它上面花费过多的时间和精力。鉴于这个原因,我没有详细介绍其中的原理和使用方法,大家可以参考
代码中的注释,了解简单的用法。
各位看官们,今天的内容就到此为止,欲知后事如何,且听下回分解。