终端I/O函数 ioctl

    ioctl 函数一直是 I/O 操作的杂物箱,不能用其它 I/O 函数进行的操作通常都能使用它表示。终端 I/O 就是使用 ioctl 函数最多的地方,可以用它来获取和设置终端窗口的大小等(POSIX.1 已经用一些单独的函数代替了终端 I/O 操作)。
#include <unistd.h>        /* System V */
#include <sys/ioctl.h>     /* BSD and Linux */

int ioctl(int fd, int request, ...);
              /* 返回值:若出错,返回 -1;否则,返回其他值 */

    在此原型中,表示的只是 ioctl 函数本身所要求的头文件。通常,还要求另外的设备专用头文件。例如,除 POSIX.1 所说明的基本操作之外,终端 I/O 的 ioctl 命令都需要头文件<termios.h>。
    每个设备驱动程序都可以定义它自己专用的一组 ioctl 命令,系统则为不同种类的设备提供通用的 ioctl 命令。

猜你喜欢

转载自aisxyz.iteye.com/blog/2379283
今日推荐