1. 首页
  2. 操作系统
  3. Unix
  4. 终端选择标志-鸿鹄论坛_华为认证h35-211-hcnp-access network题库

终端选择标志-鸿鹄论坛_华为认证h35-211-hcnp-access network题库

上传者: 2024-07-15 19:57:07上传 PDF文件 18.16MB 热度 10次

11.4获得和设置终端属性使用函数tcgetattr和tcsetattr可以获得或设置termios。这样也就可以检测和修改各种终端选择标志和特殊字符,以使终端按我们所希望的方式进行操作。#include int tcgetattr(int filedes, struct termios termpt); int tcsetattr(int filedes, int opt, const struct termios termpt);两个函数返回:若成功则为0,若出错则为-1这两个函数都有一个指向termios结构的指针作为其参数,它们返回当前终端的属性,或者设置该终端的属性。因为这两个函数只对终端设备进行操作,所以若filedes并不引用一个终端设备则出错返回,errno设置为ENOTTY。

使用tcgetattr函数与tcsetattr函数控制终端

tcsetattr的参数opt使我们可以指定在什么时候新的终端属性才起作用。opt可以指定为下列常数中的一个:TCSANOW更改立即发生。TCSADRAIN发送了所有输出后更改才发生。若更改输出参数则应使用此选择项。TCSAFLUSH发送了所有输出后更改才发生。更进一步,在更改发生时未读的所有输入数据都被删除(刷清)。tcsetattr函数的返回值易于产生混淆。如果它执行了任意一种所要求的动作,即使未能执行所有要求的动作,它也返回0(表示成功)。如果该函数返回0,则我们有责任检查该函数是否执行了所有要求的动作。这就意味着,在调用tcsetattr设置所希望的属性后,需调用tcgetattr,然后将实际终端属性与所希望的属性相比较,以检测两者是否有区别。

Linux终端tty设备驱动编程

11.5终端选择标志本节对表11-7中列出的各个终端选择标志按字母顺序作进一步说明,也指出该选择项出现在四个终端标志字段中的哪一个,以及该选择项是否是POSIX.1定义的,或是受到SVR4或4.3+BSD支持的。所有列出的选择标志(除屏蔽标志外)都用一或多位表示,而屏蔽标志则定义多位。

终端仿真程序终端仿真软件

用户评论