📄 cp.txt
字号:
1 #include <stdio.h>
2 #include <fcntl.h>
3 #include <unistd.h>
4
5 #define COPYMODE 0644
6 #define BUFFERSIZE 4096
7
8 void oops(char *,char *);
9
10 int main(int ac,char*av[])
11 {
12 if(ac!=3)
13 {
14 fprintf(stderr,"usage:%s source destination\n",*av);
15 exit(1);
16 }
17
18 int in_fd,out_fd;
19 if((in_fd=open(av[1],O_RDONLY))==-1)
20 {
21 oops("can't open",av[1]);
22 }
23 if((out_fd=creat(av[2],COPYMODE))==-1)
24 {
25 oops("can't creat",av[2]);
26 }
27
28 int n_chars;
29 char buf[BUFFERSIZE];
30 while((n_chars=read(in_fd,buf,BUFFERSIZE))>0)
31 {
32 if(write(out_fd,buf,n_chars)!=n_chars)
33 oops("write errors to ",av[2]);
34 }
35 if(n_chars==-1)
36 oops("read errors from",av[1]);
37
38 if(close(in_fd)==-1||close(out_fd)==-1)
39 oops("error closing files","");
40
41 return 0;
42 }
43
44 void oops(char *s1,char *s2)
45 {
46 fprintf(stderr,"error:%s",s1);
47 perror(s2);
48 exit(1);
49 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -