zoukankan      html  css  js  c++  java
  • 写一个函数实现文件拷贝功能

     1 #include<stdio.h>
     2 
     3 int main(int argc,char *argv[])
     4 {
        char buf[100]={0};
    5 if(argc<3){ 6 printf("参数输入错误 "); 7 return 0; 8 } 9 10 FILE *p_src = fopen(argv[1],"rb"); 11 if(!p_src){ 12 printf("读取文件失败 "); 13 return 0; 14 } 15 16 FILE *p_dst = fopen(argv[2],"wb"); 17 if(!p_dst){ 18 printf("写入文件失败 ", ); 19 fclose(p_src); 20 p_src = NULL; 21 return 0; 22 } 23 24 int size = 0; 25 while(1){ 26 size = fread(buf,sizeof(char),100,p_src); 27 if(!size) 28 break; 29 fwrite(buf,sizeof(char),size,p_dst); 30 } 31 32 fclose(p_dst); 33 p_dst = NULL; 34 fclose(p_src); 35 p_src = NULL; 36 37 }

    还可以运用系统调用函数实现cat命令的功能:

     1 #include <sys/types.h>
     2 #include <sys/stat.h>
     3 #include <fcntl.h>
     4 #include<stdio.h>
     5 #include<unistd.h>
     6 #define MAXSIZE 4096
     7 int main(int argc,char *argv[])
     8 {
     9     char buf[MAXSIZE];
    10     size_t n = 0;
    11     int fd = open(argv[1],O_RDONLY);
    12     if(fd==-1){perror("open");return -1;}
    13 
    14     while((n = read(fd,buf,MAXSIZE))>0){
    15         if(write(1,buf,n)!=n){
    16             printf("write error");
    17             return 0;
    18         }
    19     }
    20 
    21     close(fd);
    22     return 0;
    23 }
  • 相关阅读:
    JavaScript 闭包
    JavaScript for循环
    JavaScript switch语句
    JavaScript if...else 语句
    JavaScript流程控制语句脑图
    JavaScript比较和逻辑运算符
    JavaScript运算符
    记录一下获取浏览器可视区域的大小的js
    20181016记录一次前端布局
    20181015记录一个简单的TXT日志类
  • 原文地址:https://www.cnblogs.com/ll-10/p/9687092.html
Copyright © 2011-2022 走看看