(Linux文件属性]使用dup函数复制文件描述符

  //打开或者创建一个由agrv指定的文件//然后使用dup函数复制该文件的描述符//并且分别打印之前和复制之后的描述符   # include  & lt; stdio.h>   # include  & lt; unistd.h>   # include  & lt; fcntl.h>   # include  & lt; sys/stat.h>   # include  & lt; sys/types.h>   命令行参数个数,int 主要(int  char  *, argv [])   {   int 才能,fd;   如果才能(argc  !=, 2),,,//如果参数错误   {才能   ,,,printf("参数错误\ n”),,   ,,,return  1;   ,,}   如果才能((=fd 开放(* (argv + 1), O_WRONLY | O_CREAT、0644)),==, 1),,//打开argv1指定的文件   {才能   ,,,printf("打开文件% s失败\ n”, * (argv + 1));,,//打开函数错误   ,,,return  2;   ,,}   ,,printf("当前文件描述符是% d \ n”, fd),,,,,,,,//打印当前的文件描述符w   如果才能(,(fd =, dup (fd)),==, 1),,,,,,,,,,,,,,,,//获得新的文件描述符   {才能   ,,,printf (" dup文件错误\ n”),,,,,,,//dup函数操作错误   ,,,return  3;   ,,}   ,,printf (" dup文件成功! \ n”),,,,,,,,,,,,//dup操作成功   ,,printf("新的文件描述符是% d \ n”, fd);,,//打印新的文件描述符   关闭(fd);才能,,,,,,,,,,,,,//关闭文件   return 才能;0;   以前,}


(Linux文件属性]使用dup函数复制文件描述符