Linux中一切皆文件!
在宁远等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都做网站、网站设计 网站设计制作按需网站开发,公司网站建设,企业网站建设,品牌网站设计,成都营销网站建设,成都外贸网站制作,宁远网站建设费用合理。
这一块内容主要是对Linux文件的各种操作:打开、关闭、新建、读、写等,C函数(不是Shell命令!)如下:
int open(const char *path,int oflags,mode_t mode)
【path:路径/oflags:打开方式(见注2,)/mode:权限/return:句柄,错误:-1】
注1:如果文件不存在就新建它
注2:oflags分别为:
O_RDONLY:文件只读;(类似excel中的“以只读方式打开”,保护文件不被改动)
O_WRONLY:文件只写;
O_RDWR:文件可读可写;
O_NOCTTY:如果路径指向终端,则不将设备作为此进程的控制终端(在路径为终端控制台时,仍可使用);
O_NDELAY:非阻塞方式操作文件
注3:句柄其实就是一个文件结构体指针,就像在人群中举个牌表示“俺在这里,有什么事冲俺来”
int close(int fd)
【fd:已打开文件的句柄】
int creat(const char *pathname,mode_t mode)
【path:路径/mode:权限】
ssize_t read(int fd,void *buf,size_t len)
【fd:已打开文件的句柄/buf:读出数据的保存位置/len:读取数据的长度(byte)/return:实际读取数据字节数,错误:-1】
ssize_t write(int fd,void *buf,size_t count)
【fd:已打开文件的句柄/buf:需要写入的数据/count:写入数据的长度(byte)/return:实际写入数据字节数,错误:-1】
文件操作的4个头文件:
#include
#include
#include
#include
上面这几个头文件在×××呢?在shell下输入“man 2 open”试试。。
P.S 为了更好的理解这个章节推荐温习谭浩强《C语言程序设计》(第四版)的相关内容,里面有一些概念性的东西,fopen()、fclose()等等。