termios
是一个在 Unix 和类 Unix 系统(如 Linux)中用于表示终端设置的结构体
c_iflag
:输入模式标志。这些标志控制输入数据的处理方式,例如回显、换行符处理等。c_oflag
:输出模式标志。这些标志控制输出数据的处理方式,例如换行符处理、制表符扩展等。c_cflag
:控制模式标志。这些标志主要用于控制通信参数,例如波特率、数据位数、奇偶校验等。c_lflag
:本地模式标志。这些标志控制终端的本地行为,例如回显、规范模式等。c_cc
:控制字符数组。这是一个包含特定控制字符的数组,例如中断字符(Ctrl+C)、暂停字符(Ctrl+S)等。c_ispeed
和 c_ospeed
:输入和输出速度。这两个变量分别表示终端的输入和输出速度,通常以波特率表示。在编程时,可以使用 tcgetattr()
函数获取当前终端设置,修改 termios
结构体中的成员变量来更改终端设置,然后使用 tcsetattr()
函数应用更改。这种方法通常用于实现原始模式(raw mode)或规范模式(canonical mode)等特定的终端操作。