fread和fwrite的使用
fread和fwrite的使用
fread和fwrite一般用于二进制文件的输入/输出,要不然你打开fwrite写入的文件就是乱码。
1.fread和fwrite函数
数据块I/O fread与fwrite
函数原型:
size_t fread(void *buffer, size_t size, size_t, count, FILE *pf)
size_t fwrite(void *buffer, size_t size, size_t count, FILE *pf)
功能:读写数据块(将内存的内容直接写入磁盘)
返回值:成功,返回读/写的个数,出错或文件尾,返回0.
参数含义:
buffer 从pf中读取到buffer/将buffer中的写入到pf中去。
size 每个要读/写的数据块的大小。
count 要读/写的数据块的个数
fp 要读/写的文件指针
typedef unsigned size_t
2. 文本与二进制文件之间的区别是\n和\r之间的转换。
3.例子
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include <stdlib.h> void main1()
{
int a[];
printf("%p", a);
for (int i = ; i < ;i++)
{
;
printf("\n%d", a[i] = i);
} FILE *pf = fopen("C:\\1.bin", "r"); int num=fwrite(a, sizeof(int), , pf);//第一个内存首地址,第二个元素大小,第三个个数
printf("fwrite return =%d", num);//返回写入成功的个数.失败返回0
fclose(pf); system("pause"); }
void write()
{
int a[]; for (int i = ; i < ; i++)
{
printf("\n%d", a[i] = i);
}
FILE *pf = fopen("C:\\1.bin", "wb");
int num = fwrite(a, sizeof(int), , pf);//第一个内存首地址,第二个元素大小,第三个个数
printf("fwrite return =%d", num);//返回写入成功的个数.失败返回0
fclose(pf);
} void read()
{
void *p = malloc();
printf("%p\n", p);
FILE *pf = fopen("C:\\1.bin", "rb");
int num= fread(p, , , pf);//第一个内存首地址,第二个元素大小,第三个个数
printf("fread return =%d", num);//返回读取成功个数
fclose(pf);
} void main()
{
read(); system("pause");
}
fread和fwrite的使用的更多相关文章
- 函数fgets和fputs、fread和fwrite、fscanf和fprintf用法小结 (转)
函数fgets和fputs.fread和fwrite.fscanf和fprintf用法小结 字符串读写函数fgets和fputs 一.读字符串函数fgets函数的功能是从指定的文件中读一个字符串到字符 ...
- Matlab 用fread、fwrite实现大文件读写
最近在分析一个35G的大数据文件,猛一看,是不是很吓人啊,不过还好,师兄写文件的格式非常规范,读取数据来也就很方便了,主要是使用了读写文件的两个函数fread和fwrite,下面用matlab简单尝试 ...
- C++之函数fgetc和fputc、fgets和fputs、fread和fwrite、fscanf和fprintf用法小结
#include <iostream> #include <cstdio> #include <cstdlib> using namespace std; int ...
- C语言中的fread和fwrite
C语言中的fread和fwrite是专门用来操作文件的方法. 1. fread负责从打开的文件指针中读取文件内容. 函数原型:size_t fread(void *p, size_t size, si ...
- open/fopen read/fread write/fwrite区别
fopen /open区别 UNIX环境下的C 对二进制流文件的读写有两套班子:1) fopen,fread,fwrite ; 2) open, read, write这里简单的介绍一下他们的区别.1 ...
- fread 和 fwrite 函数用法示例以及注意事项
1.函数功能 用来读写一个数据块. 2.一般调用形式 fread(buffer,size,count,fp); fwrite(buffer,size,count,fp); 3.说明 ( ...
- 函数fgets和fputs、fread和fwrite用法小结(转)
字符串读写函数fgets和fputs: 1.fgets()函数:原型char *fgets(char *s, int n, FILE *stream);从流中读取n-1(n默认1024)个字符之前,如 ...
- C++:fread、fwrite函数用法
主要内容: fread.fwrite函数的用法 1.函数功能 用来读写一个数据块. 2.一般调用形式 fread(buffer,size,count,fp); fwrite(buffer,size,c ...
- fread和fwrite函数功能
fread和fwrite函数功能 用来读写一个数据块. 一般调用形式 fread(buffer,size,count,fp); fwrite(buffer,size,count,fp); ...
随机推荐
- linux交换空间
swap空间有两种形式:一是交换分区,二是交换文件.总之对它的读写都是磁盘操作. linux内存通过 virtual memory 虚拟内存来管理整个内存, 虚拟内存管理着物理内存,也管理着swap交 ...
- oracle查询16个小题
--1.查询出至少有一个雇员的所有部门 select Dept_id from emp group by Dept_id having count(*)>0; select dname from ...
- 常见查找算法之php, js,python版
常用算法 >>>1. 顺序查找, 也叫线性查找, 它从第一个记录开始, 挨个进行对比, 是最基本的查找技术 javaScript 版顺序查找算法: // 顺序查找(线性查找) 只做找 ...
- CCNA笔记(3)
网络类型 1,局域网 在一定范围的网络连接,只允许内部人员使用 2城域网 一个城市的网络连接在一起 3.广域网 一个省或者一个市的网络 所有的局域网加上广域网就是互联网
- 学习web前端技术的笔记,仅供自己查阅备忘,移动对font-size的控制(并非原创)
假设根字体font-size的值是40px, 640/40=16,16就是px换算rem的值 function initHtmlFontSize(){ //获取可可视屏幕的宽度 var _width= ...
- 连连看(dfs)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1175 连连看 Time Limit: 20000/10000 MS (Java/Others) ...
- as提示功能
- 解决不同操作系统下git换行符一致性问题
一.不同操系统下的换行符CR回车 LF换行Windows/Dos CRLF \r\nLinux/Unix LF \nMacOS CR \r二.解决方法 打卡git bash,设置core.autocr ...
- jquery ajax 请求中多出现一次OPTIONS请求及其解决办法
http://www.tangshuang.net/2271.html 在上一篇<服务端php解决jquery ajax跨域请求restful api问题及实践>中,我简单介绍了如何通过服 ...
- 你知道织梦后台安装插件时为什么会出现这个Character postion 686, 'item'&n
https://zhidao.baidu.com/question/589525064.html?qbl=relate_question_3&word=Tag Character postio ...