[Linux文件属性]使用dup函数复制文件描述符
//打开或者创建一个由agrv指定的文件//然后使用dup函数复制该文件的描述符//并且分别打印之前和复制之后的描述符#include<stdio.h>#include<unistd.h>#include<fcntl.h>#include<sys/stat.h>#include<sys/types.h>intmain(intargc,char*argv[]){intfd;if(argc!=2)//如果参数错误{printf("参数错误\n");return1;}if((fd=open(*(argv+1),O_WRONLY|O_CREAT,0644))==-1)//打开argv1指定的文件{printf("打开文件%s失败\n",*(argv+1));//打开函数错误return2;}printf("当前文件描述符是%d\n",fd);//打印当前的文件描述符wif((fd=dup(fd))==-1)//获得新的文件描述符{printf("dup文件错误\n");//dup函数操作错误return3;}printf("dup文件成功!\n");//dup操作成功printf("新的文件描述符是%d\n",fd);//打印新的文件描述符close(fd);//关闭文件return0;}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。