open_close函数
OPEN函数
头文件:
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
函数原型:
-
当文件存在时
int open(const char* pathname,int flags)
-
当文件不存在时
int open (const char* pathname,int flags,int perms)
返回值
成功:文件描述符
失败:-1
CLOSE函数
头文件:
#include <unistd.h>
函数原型:
int close(int fd)
返回值:
成功:0
失败:-1
程序验证步骤
程序
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>int main(int argc,char** argv){int fd1,fd2;char buf[512];int read_size;if(argc!=3){printf("param error!!\r\n");return -1;}fd1= open(argv[1],O_RDONLY);fd2= open(argv[2],O_WRONLY|O_CREAT,0666);if (fd1<0||fd2<0){printf("open erro!\r\n");return -1;}while (1){read_size=read(fd1,buf,512);if (read_size==0)break;write(fd2,buf,read_size);}close(fd1);close(fd2);return 0;}
赋权限
gec@ubuntu:~/IO_program$ sudo chown -R gec ~/IO_program/part_2