关于open,fopen的参数,白话文版!
来源:互联网 发布:孔浩的java视频 编辑:程序博客网 时间:2024/05/01 10:50
相信大家都看怕了一些技术性的文章,里面都是一些专业的术语,本来很简单的问题,在其描述之下,让新手摸不着头脑。
本人也刚进入计算机行业,能做的就是翻译一下那些狗屁人写的文章,直接用白话的方式,让大家容易理解一些。
先开始说open这个函数。
它的定义是这样的:int open(const char *path,int oflags)
其中path参数顾名思义,表示文件所在的路径,例如“/root/homework”(这个是linux底下的文件路径形式)
oflags是什么呢?他基本的值有
O_RDONLY这个表示文件以只读方式打开,就是打开文件后,你只能进行读操作,不可写入数据。
O_WRONLY这个表示以写入方式打开,就是你打开文件后,你只能进行写操作,而不可读出数据
O_RDWR这个是以读写操作打开文件,你既可写也可读文件
下面几个是oflags的可选项目
O_APPEND是把写入的数据插入到文件末尾,就是说是从文件末尾写入你的数据
O_TRUNC是把文件中内容清空后,再写入你的数据
O_CREAT是创建文件(若文件存在则不创建)
现在开始举例说明:
open("/root/homework",O_RDONLY)以读的方式打开root目录下的文件homework,该文件必须是已经存在
open("/root/homework",O_RDONLY|O_CREAT)以读的方式打开root目录下的文件homework,如果该文件不存在则会创建这个文件
open("/root/homework",O_WRONLY)以写的方式打开文件,该文件要事先存在
open("/root/homework",O_WRONLY|O_CREAT)以写的方式打开root目录下的文件homework,如果该文件不存在则会创建这个文件
open("/root/homework",O_WRONLY|O_CREAT|O_APPEND)以写的方式打开root目录下的文件homework,如果该文件不存在则会创建这个文件,你写入的文件会插入到文件末尾,例如原来homework文件中的内容为“你是谁”,你现在要写入“我是我”,那么你写入后文件中的内容为“你是谁我是我”
open("/root/homework",O_WRONLY|O_CREAT|O_TRUNC)以上面为例子,例如原来homework文件中的内容为“你是谁”,你现在要写入“我还就是我”,那么你写入后文件中的内容为“我还就是我”,这个O_TRUNC选项会先把文件先清空。
与O_CREAT相关的权限选项先不说了
现在说一下fopen这个函数
他的定义是:FILE *fopen(const char *filename,const char *mode);
第一个参数是文件路径了,例如“/root/check”
第二个参数有很多个
r 以读方式打开
w 以写方式打开,并把文件清空,然后再写入数据,注意:如果文件不存在,它还会创建文件
a 以写方式打开,数据写入到文件末尾,也就是上次写入的数据末尾,如果上次写到“123456”,你再写的话就是“123456789”
r+ 以读写方式打开
w+ 以读写方式打开
a+ 以读写方式打开
- 关于open,fopen的参数,白话文版!
- fopen,open的区别
- 关于C语言中open和fopen的一点困惑
- open和fopen的区别
- open和fopen的区别
- open和fopen的区别
- fopen与open的区别
- open和fopen的区别:
- open和fopen的区别
- fopen和open的区别
- open和fopen的区别
- open和fopen的区别
- fopen与open的区别
- open和fopen的区别
- open与fopen的区别
- open和fopen的区别:
- open和fopen的区别
- fopen与open的区别
- module_init和module_exit
- 硬盘安装Linux和从Grub命令行启动操作系统
- 股海沉浮:人民币升值对哪些行业利好
- 周鸿祎:要替自己正名先要颠覆曾经的商业思维
- WinMain函数参数介绍
- 关于open,fopen的参数,白话文版!
- linux 下 用c语言创建mysql数据库笔记(二)
- 条款46:需要类型转换时请为模板定义非成员函数
- php时间戳与日期互转
- October, 21
- 中国会变成一个世界IT工厂么?
- jAVA程序人员必须知道的。
- 开始→运行→输入的命令集锦
- Linux中tty pty pts 概念区别