每个新创建的进程都会自动打开三个文件描述符:标准输入(stdin)、标准输出(stdout)和标准错误(stderr)。这三个文件描述符是进程与外部世界进行输入输出交互的主要通道。
-
标准输入(stdin):它是进程接收输入的通道。通常情况下,它连接到键盘或者其他输入设备。通过读取标准输入,进程可以获取用户输入数据。
-
标准输出(stdout):它是进程输出数据的通道。通常情况下,它连接到显示器或者其他输出设备。通过向标准输出写入数据,进程可以向用户显示信息或者将处理结果输出到显示设备。
-
标准错误(stderr):它是进程输出错误信息的通道。通常情况下,它也连接到显示器或者其他输出设备。通过将错误信息写入标准错误,进程可以将错误信息单独输出,与标准输出区分开来。
这三个文件描述符在进程启动时会自动关联到适当的文件或设备上。它们的文件描述符号分别是 0、1 和 2,也就是常见的 STDIN_FILENO
、STDOUT_FILENO
和 STDERR_FILENO
宏的值。