fopen函数和fwrite、fread、fseek函数的配套使用
一、fopen函数
1.包含头文件:
#include <stdio.h>
// ANSIC标准中的C语言库函数
2.函数原型:
FILE *fopen(const char *pathname, const char *mode);
3.函数参数:
① pathname——path为包含了路径的文件名
② mode——文件的打开方式
4.mode方式补充:
5.函数返回值:
① 成功:返回指向该流的文件指针
② 失败:返回NULL,错误代码存在errno 中
二、fwrite函数
1.函数原型:
size_t fwrite(const void *ptr, size_t size, size_t nmemb,FILE *stream);
2.函数参数:
① ptr——要写入的数据的头指针
② size——每一次要写入数据的字节数
③ nmemb——写入数据的次数(以上一个参数为单位)
④ stream——FILE *类型的文件指针
3.函数返回值:
成功:返回fwrite函数的第三个参数nmemb,也就是fwrite函数的写入次数,否则失败
三、fread函数
1.函数原型:
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);
2.函数参数:
① ptr——放置读取内容的首地址
② size——每一次要读取的数据的字节数
③ nmemb——读取数据的次数(以上一个参数为单位)
④ stream——FILE *类型的文件指针
3.函数返回值:
成功:返回fread函数的第三个参数nmenb,也就是fread函数的读取次数,否则失败
四、fseek函数
1.函数原型:
int fseek(FILE *stream, long offset, int whence);
2.函数参数:
① stream——FILE *类型的文件指针
除了第一个参数剩下的使用规则都和lseek函数一样
五、demo(四个函数的配套使用)
#include <stdio.h>
#include <error.h>
#include <string.h>
#include <stdlib.h>int main()
{FILE *fp;char *pathname = "./file1";char *buf = "dengerbao zhengde henshuai";char *readBuf = NULL;// FILE *fopen(const char *pathname, const char *mode);fp = fopen(pathname,"w+");
// w+加引号是因为原型为char *型的字符串if(fp != NULL){printf("open success!\n");}// size_t fwrite(const void *ptr, size_t size, size_t nmemb,FILE *stream); int a = fwrite(buf,sizeof(char),strlen(buf),fp);// int fseek(FILE *stream, long offset, int fromwhere);fseek(fp,0,SEEK_SET);readBuf = (char *)malloc(sizeof(char)*strlen(buf));// size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);fread(readBuf,sizeof(char)*strlen(buf),1,fp);fseek(fp,0,SEEK_END);printf("readBuf:%s\n",readBuf);fclose(fp);return 0;
}
fopen函数和fwrite、fread、fseek函数的配套使用相关推荐
- 十二、Linux文件 - fseek函数讲解
目录 一.fseek函数讲解 二.fseek函数实战 一.fseek函数讲解 重定向文件内部的指针 注:光标 ---- 文件内部的指针 函数原型: int fseek(FILE *stream,lon ...
- fseek函数有什么用?
fseek函数是C语言中用来改变文件读写位置指针的函数.通过调用fseek函数,可以改变fread.fwrite等函数读写文件时的读写位置,从而实现文件的随机读写功能.
- C++文件操作——fopen/fseek/ftell/fread/fwrite/fclose等函数用法
1. fopen FILE * fopen(const char * path,const char * mode); 函数说明 参数path字符串包含欲打开的文件路径及文件名,参数mode字符串则代 ...
- fread函数和fwrite函数,read,write
fread函数和fwrite函数 1.函数功能 用来读写一个数据块. 2.一般调用形式 fread(buffer,size,count,fp); fwrite(buffer,size,count,fp ...
- fread函数和fwrite函数的用法
fread函数和fwrite函数 1.函数功能 用来读写一个数据块. 2.一般调用形式 fread(buffer,size,count,fp); fwrite(buffer,size,co ...
- fseek函数fread函数的用法
fread和fseek的用法 原文:http://baike.baidu.com/view/656696.htm http://baike.baidu.com/view/656689.htm frea ...
- fread函数和fwrite函数详解
fread函数和fwrite函数详解 fread() 头文件:#include<stdio.h> 功能:是用于读取二进制数据 原型: size_t fread(void*buffer,si ...
- java+fseek+函数_函数fseek() 用法(转)
在阅读代码时,遇到了很早之前用过的fseek(),很久没有用了,有点陌生,写出来以便下次查阅. 函数功能是把文件指针指向文件的开头,需要包含头文件stdio.h fseek 函数名: fseek 功 ...
- fseek函数的应用
fseek: 定位 #include <stdio.h> int fseek(FILE *stream, long offset, int whence); //定位 ...
最新文章
- SQL注入(SQL注入(SQLi)攻击)攻击-注入点
- JdbcTemplate+PageImpl实现多表分页查询
- html安卓手机打开后只有半屏,宽度设置100%在移动端时变成一半
- 【Python】Python库之Web网站开发
- String.GetEnumerator 方法的C#例子
- 一人身兼多个项目时的“课程表”工作模式实践
- Windows Phone SDK 7.1 简体中文版离线安装包地址
- 超级硬盘恢复软件真的超好用哦!
- ogg格式怎样才能转换成MP3格式
- javascript回调函数有什么用
- PR音频处理——音乐逐渐萎靡的效果
- MOOC·嵩天老师团队·北京理工大学:《Python语言程序设计》自学笔记
- 表格特性:表格实现的边框、表格特性、边框的颜色、表格的标题
- opencv实战从0到N (14)- 凸包算法 convexity defects
- sap 查询数据 未分离版本
- 基于Pygame中Pygame模块的大战外星人
- vue3 setup语法糖下父组件调用子组件的方法
- html图片中绝对定位,CSS中绝对定位
- 适合程序员的耳机_有没有适合程序员打代码时用的耳机推荐?
- java程序发布与部署_java程序UAT的部署