Linux中的文件描述符(file descriptor)

fd是一个非负整数,一个索引值,指向内核为每一个进程所维护的该进程打开文件的记录表。

程序打开一个现有文件或者创建一个新文件,内核向该进程返回一个文件描述符。

每个Unix进程都有三个标准的POSIX文件描述符,对应三个标准流:

(ref:https://zh.wikipedia.org/wiki/%E6%96%87%E4%BB%B6%E6%8F%8F%E8%BF%B0%E7%AC%A6

整数值 名称 <unistd.h>符号常量[1] <stdio.h>文件流[2]
0 Standard input STDIN_FILENO stdin
1 Standard output STDOUT_FILENO stdout
2 Standard error STDERR_FILENO stderr

 

标准输入:是输入到程序的数据(通常是文件)。程序要求以读(read)操作来传输数据。

C++ <iostream>变量为std::cin

并非所有的程序都要求输入,比如ls

除非重定向,否则输入是预期由键盘获取的。

标准输出:C++ <iostream>变量为std::cout

除非重定向,否则输出到终端(屏幕)

并非所有程序都要求输出,如mv

标准错误:C++ <iostream>变量为std::cerr 和 std::clog

默认输出到终端(屏幕)

 

原文链接: https://www.cnblogs.com/geeklove01/p/8998676.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    Linux中的文件描述符(file descriptor)

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/273412

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月14日 下午11:36
下一篇 2023年2月14日 下午11:36

相关推荐