![](https://csdnimg.cn/release/download_crawler_static/3583378/bg6.jpg)
第 2 章 curses 库 I/O 处理
·6·
半延迟和无延迟模式的函数语法如表 2.7。
表 2.7 延迟函数概述
头文件
curses.h
概述
int halfdelay( tenth)
int tenth;
int nodelay(win,bf)
WINDOW *win;
bool bf;
成功 失败 返回
OK ERR
halfdelay()设置半延迟模式,参数 tenth 指定半延迟的时间间隔,单位是 10 毫秒。使用
函数 nocbreak() 函数可以取消终端的半延迟模式。
nodelay()函数设置终端无延迟模式。win 是指向需要设置无延迟模式的窗口的指针,bf
用来决定开启或者关闭该模式。如果 bf 为 TRUE,则设置无延迟模式。
2.3 字符以及字符串操作
在确保终端进行了正确的设置之后我们就可以对终端进行一些操作。字符和字符串操
作是应用程序中使用频率最高的, curses 库中的一些基本函数允许我们从键盘接受输入,
并且将结果输出到指定窗口上或者在指定窗口上读写、删除字符和字符串、定位光标位置
或者控制字符色彩等等。为了防止重复,下面我们将描述最常使用的标准屏幕上的字符和
字符串操作函数,指定窗口上的函数它们命名符合 curses 函数命名规范,请自行参考帮助
文件确定。
2.3.1 字符、字符串输出
curses 中提供了 addch()、addstr()函数分别用来在标准屏幕上输出字符和字符串。同时
提供了 printw()函数进行格式化屏幕输出。
2.3.1.1 addch()函数
addch()函数将给定的字符输出到标准屏幕上的当前位置,它的参数是一个 chtype 类型
的字符,函数语法如表 2.8 所示。
表 2.8 增加字符函数概述
头文件
curses.h
概述 int addch(ch);
chtype ch;
int echochar(ch);
chtype ch;
成功 失败 返回
OK ERR
addch()函数是 curses 中的核心输出函数,许多其余的函数都是从它演变过去的。如果