FILE *fopen(const char *path, const char *mode);
path:相对路径,绝对路径均可,相对路径是相对于当前路径说的。
mode:
"r" 只读,文件必须已存在
"w" 只写,如果文件不存在则创建,如果文件已存在则把文件长度截断(Truncate) 为0字节再重新写,也就是替换掉原来的文件内容
"a" 只能在文件末尾追加数据,如果文件不存在则创建
"r+" 允许读和写,文件必须已存在
"w+" 允许读和写,如果文件不存在则创建,如果文件已存在则把文件长度截断为0字节再重新写 "a+" 允许读和追加数据,如果文件不存在则创建
重点是打开时文件指针fp的位置,fopen就相当于是对fp指针初始化为文件开始,相当于先 fseek(*fp, 0, SEEK_SET )( 参数mode为"a" "a+"时除外:当打开后开始是读写文件时,文件指针在文件的开头 ,当打开后一开始是追加文件时,文件指针在文件最后。这点 man fopen 写的非常清楚)。
理解了以上几个参数后别的就很好理解了,fwrite() 、fread()、fputc()、fgetc()等等,只要打开后发生读写操作,文件指针fp会自动往后走。
阅读(600) | 评论(0) | 转发(0) |
<script>window._bd_share_config={"common":{"bdsnskey":{},"bdtext":"","bdmini":"2","bdminilist":false,"bdpic":"","bdstyle":"0","bdsize":"16"},"share":{}};with(document)0[(getelementsbytagname('head')[0]||body).appendchild(createelement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new date()/36e5)];</script>
path:相对路径,绝对路径均可,相对路径是相对于当前路径说的。
mode:
"r" 只读,文件必须已存在
"w" 只写,如果文件不存在则创建,如果文件已存在则把文件长度截断(Truncate) 为0字节再重新写,也就是替换掉原来的文件内容
"a" 只能在文件末尾追加数据,如果文件不存在则创建
"r+" 允许读和写,文件必须已存在
"w+" 允许读和写,如果文件不存在则创建,如果文件已存在则把文件长度截断为0字节再重新写 "a+" 允许读和追加数据,如果文件不存在则创建
重点是打开时文件指针fp的位置,fopen就相当于是对fp指针初始化为文件开始,相当于先 fseek(*fp, 0, SEEK_SET )( 参数mode为"a" "a+"时除外:当打开后开始是读写文件时,文件指针在文件的开头 ,当打开后一开始是追加文件时,文件指针在文件最后。这点 man fopen 写的非常清楚)。
理解了以上几个参数后别的就很好理解了,fwrite() 、fread()、fputc()、fgetc()等等,只要打开后发生读写操作,文件指针fp会自动往后走。
相关热门文章
给主人留下些什么吧!~~
评论热议