当前位置: 技术问答>linux和unix
dup2(fd, 1); 中的 1 是指 stdout,那别的数字指啥??
来源: 互联网 发布时间:2017-05-01
本文导语: RT linux 新手菜鸟。 在学习研究源码时,一直为看不到 printf 的输出而困惑,查了半天原来是 dup2 把 stdout 定位到 /dev/null 了... 问题: 源码中 还有 dup2(fd, 0); 和 dup2(fd, 2); ,那 这里的 0 和 2 指啥?? 还...
RT
linux 新手菜鸟。
在学习研究源码时,一直为看不到 printf 的输出而困惑,查了半天原来是 dup2 把 stdout 定位到 /dev/null 了...
问题:
源码中 还有 dup2(fd, 0); 和 dup2(fd, 2); ,那 这里的 0 和 2 指啥??
还有一个问题,有 0、1、2 ,那还有没有别的?比如 3、4、5..... 有的话,分别指啥??
菜鸟求教,万分感谢!!!
linux 新手菜鸟。
在学习研究源码时,一直为看不到 printf 的输出而困惑,查了半天原来是 dup2 把 stdout 定位到 /dev/null 了...
问题:
源码中 还有 dup2(fd, 0); 和 dup2(fd, 2); ,那 这里的 0 和 2 指啥??
还有一个问题,有 0、1、2 ,那还有没有别的?比如 3、4、5..... 有的话,分别指啥??
菜鸟求教,万分感谢!!!
|
0 标准输入, 1 标准输出,2 标准错误
http://www.360doc.com/content/08/1020/18/26398_1795434.shtml
http://www.360doc.com/content/08/1020/18/26398_1795434.shtml
|
3以上就没有特指了,要们是已经打开的文件,socket之类,要么是未使用的文件描述符
|
这几个是特指:0 标准输入, 1 标准输出,2 标准错误
其他的就是你自己打开的然后由系统分配的文件描述符了,从4开始算起
其他的就是你自己打开的然后由系统分配的文件描述符了,从4开始算起
|
0 标准输入, 1 标准输出,2 标准错误
|
这是基础知识,楼上都正解,你可以学看看stevens写的apue这本书
|
0,1,2是系统关注的,许多设计都是参考0,1,2这三个数字,其他都无所谓。
|
建议先看apue,基础打好了,学其他也容易。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。