文档介绍:Untitled Document 页码,1/9
close(关闭文件) 。错误代码EBADF参数fd非有效的文
件描述词,或该文件已关闭。
dup2(复制文件描述词)
相关函数 open,close,fcntl,dup
表头文件 #include<>
定义函数 int dup2(int odlfd,int newfd);
函数说明 dup2()用来复制参数oldfd所指的文件描述词,并将它拷贝至参数
newfd后一块返回。若参数newfd为一已打开的文件描述词,则newfd
所指的文件会先被关闭。dup2()所复制的文件描述词,与原来的文
件描述词共享各种文件状态,详情可参考dup()。
返回值 当复制成功时,则返回最小及尚未使用的文件描述词。若有错误则
返回-1,errno会存放错误代码。
附加说明 dup2()相当于调用fcntl(oldfd,F_DUPFD,newfd);请参考fcntl
()。
错误代码 EBADF 参数fd 非有效的文件描述词,或该文件已关闭
fcntl(文件描述词操作)
相关函数 open,flock
表头文件 #include<>
#include<>
file://D:\linux_c\function\ 2004-1-9Untitled Document 页码,3/9
定义函数 int fcntl(int fd , int cmd);
int fcntl(int fd,int cmd,long arg);
int fcntl(int fd,int cmd,struct flock * lock);
函数说明 fcntl()用来操作文件描述词的一些特性。参数fd代表欲设置的文件
描述词,参数cmd代表欲操作的指令。
有以下几种情况:
F_DUPFD用来查找大于或等于参数arg的最小且仍未使用的文件描述
词,并且复制参数fd的文件描述词。执行成功则返回新复制的文件
描述词。请参考dup2()。F_GETFD取得close-on-exec旗标。若此旗
标的FD_CLOEXEC位为0,代表在调用exec()相关函数时文件将不会关
闭。
F_SETFD 设置close-on-exe