C语言中的文件函数是在用户空间中创建8K的缓冲区,fopen返回的是FILE* 的指针(地址),而open这类函数是介于内核和用户空间之间,open返回的是非负整数:当前进程的文件描述符。
这并不是重载,而是变参函数(C语言知识点):int open(const char* pathname,int flags, … );
flags有三个可选项,及权限:
perror:打印出错信息
strerror(errno):打印出错信息(返回字符串)
read:
自己封装read函数,read地时候可能会被信号中断,所以自己封装一下,被中断后继续读完。
write封装:
防止被打断、打断后继续写操作