11.8行控制函数下列四个函数提供了终端设备的行控制能力。其中,参数filedes引用一个终端设备,否则出错返回,errno设置为ENOTTY。


#include <termios.h> 

int tcdrain(int filedes); 

int tcflow(int filedes, int action); 

int tcflush(int filedes, int que); 

int tcsendbreak(int filedes, int duration);

</termios.h>

四个函数返回:若成功则为0,若出错则为-1。tcdra in函数等待所有输出都被发送。tcflow用于对输入和输出流控制进行控制。action参数应当是下列四个值之一:

  • TCOOFF输出被挂起。

  • TCOON以前被挂起的输出被重新起动。

  • TCIOFF系统发送一个STOP字符。这将使终端设备暂停发送数据。

  • TCION系统发送一个START字符。这将使终端恢复发送数据。

tcflush函数刷清(抛弃)输入缓存(终端驱动程序已接收到,但用户程序尚未读)或输出缓存(用户程序已经写,但尚未发送)。que参数应当是下列三个常数之一:

  • TCIFLUSH刷清输入队列。

  • TCOFLUSH刷清输出队列。

  • TCIOFLUSH刷清输入、输出队列。

tcsendbreak函数在一个指定的时间区间内发送连续的0位流。若duration参数为0,则此种发送延续0.25~0.5秒之间。POSIX.1说明若duration非0,则发送时间依赖于实现。SVR4 SVID说明若duration非0,则不发送0位。但是,SVR4手册页中说,若duration非0,则tcsendbreak的行为与tcdrain一样。另一个系统手册页则说,若duration非0,则传送0位的时间是duration×N,其中N在0.25~0.5秒之间。从中可见,如何处理这种条件还没有统一样式。

相关资源推荐:

  1. ISO POSIX Linux Unix标准C函数速查手册

  2. ISO POSIX Linux Unix标准C函数c++速查手册

  3. POSIX标准以及函数接口查询

  4. 终端标识-鸿鹄论坛_华为认证h35-211-hcnp-access network题库

  5. 终端标识-鸿鹄论坛_华为认证h35-211-hcnp-access network题库


#include <stdio.h>

</stdio.h>