linux中的dup和fcntl的用法
生活随笔
收集整理的這篇文章主要介紹了
linux中的dup和fcntl的用法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
(1)dup函數:文件描述符的拷貝
? ?函數頭文件及函數原型:
?
參數:原來的文件描述符,新的文件描述符,標志位;
返回值:成功(返回新的文件描述符)失敗(-1)
dup():使用最小的未使用的文件描述符來作為新文件描述符;
dup2():使用給定的文件描述符;
? ? ? ? ? ? ? ?情況1:oldfd不存在,直接返回-1;
? ? ? ? ? ? ? ?情況2:oldfd和newfd相同,不做任何事;
? ? ? ? ? ? ? ?情況3:如果newfd指向的文件打開,則先關閉newfd,再將oldfd的文件描述符賦值給newfd;(原本輸出到newfd中的數據,現在輸出到oldfd中了,這就是linux系統的重定向的方法實現;
dup3():摘自https://blog.csdn.net/lcstrive/article/details/25097435
(2)fcntl函數:根據文件描述符來操作文件的狀態
? ? ? 函數頭文件及函數原型:
功能:arg設置為0
lock結構體成員:
總結
以上是生活随笔為你收集整理的linux中的dup和fcntl的用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux目录操作函数
- 下一篇: linux操作系统之exec函数族