Chinaunix首页 | 论坛 | 博客
  • 博客访问: 742665
  • 博文数量: 130
  • 博客积分: 2951
  • 博客等级: 少校
  • 技术积分: 1875
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-04 18:32
文章分类

全部博文(130)

文章存档

2013年(1)

2012年(129)

分类: C/C++

2012-10-19 10:35:15

流程:
1. 判断两个参数是否一样,一样的话,抛错

  1. if ( strcmp(av[1], av[2]) == 0 ){
  2.         fprintf(stderr,"cp: `%s' and `%s' are the same file.\n",
  3.             av[1], av[2]);
  4.         exit(1);
  5.     }

2. 打开第一个文件,创建第二个文件

  1. if ( (in_fd=open(av[1], O_RDONLY)) == -1 )
  2.                 oops("Cannot open ", av[1]);
  3.  if ( (out_fd=creat( av[2], COPYMODE)) == -1 )
  4.                 oops( "Cannot creat", av[2]);

3. 从第一个文件读数据,写入第二个文件

  1. while ( (n_chars = read(in_fd , buf, BUFFERSIZE)) > 0 )
  2.       if ( write( out_fd, buf, n_chars ) != n_chars )
  3.                oops("Write error to ", av[2]);

4. 关闭文件

  1. close(in_fd);
  2. close(out_fd);




阅读(1162) | 评论(0) | 转发(0) |
0

上一篇:C小程序 - 获取当前时间

下一篇:cksum

给主人留下些什么吧!~~