zoukankan      html  css  js  c++  java
  • 【linux系统编程】使用read(),write()函数写个简单的cp复制

    使用read(),write()函数,写一个简单的复制

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <unistd.h>
    #include <pthread.h>
    #include <fcntl.h>
    
    int main(int argc,char *argv[])
    {
        char buf[1024];
        int n=0;
        
        int fd1=open(argv[1],O_RDONLY);
        if(fd1 == -1){
            perror("open argv1 error");
            exit(1);
        }
        int fd2=open(argv[2],O_RDWR|O_CREAT|O_TRUNC,0664);
        
        if(fd2 == -1){
            perror("open argv2 error");
            exit(1);
        }
        while((n=read(fd1,buf,1024)) !=0)
        {
            if(n<0){
                perror("read error");
                break;
            }
            write(fd2,buf,n);
        }
        close(fd1);
        close(fd2);
        return 0;
    
    }

    使用make进行编译

    src = $(wildcard *.c)
    target = $(patsubst %.c,%,$(src))
    
    ALL:$(target)
    
    %:%.c
    
        gcc $< -o $@
    clean:
    
        -rm -rf $(target)
    
    .PHONY: clean ALL
  • 相关阅读:
    [TEST123] Performance Test
    [XML123] FpML
    [Java123] Java中的System.exit
    【大秦帝国123】
    1_1:编程概念 + 计算机基础
    响应式布局
    苏宁首页demo
    rem适配方案
    less的使用
    rem布局
  • 原文地址:https://www.cnblogs.com/powercool/p/12915419.html
Copyright © 2011-2022 走看看