质疑fread()的块方式读取

原创 2006年06月06日 16:39:00

size_t fread( void *buffer, size_t itemsize, size_t count, FILE *stream );

以前调用fread()总是用字符方式, 即itemsize = 1.

现在偶尔应用了一下块方式, 将 itemsize 设为一个结构的大小, 而 count = 1.

正常情况下是没问题.

如果文件大小不足一个结构, 返回应该是0. 可是文件增长后, 以后读取的所有结构都错了!

因为第一次读取后文件指针就不在结构的边界上了.

看来还是要用字符方式读取.


版权声明:

相关文章推荐

数据块I/O:fread与fwrite

数据块I/O:fread与fwrite 函数原型: size_t fread(void *buffer,size_t size, size_t count,FILE *fp) siz...

fread与file_get_contents读取文件的区别

关于这两个函数的官方解释是这样的:           fread()                      函数读取文件...

fputc,fgetc,fputs,fgets,fwrite,fread写入或读取数据文件详细介绍

fputs,fgets: /* \r\n windows下存入文本数据时换行符会变成/r/n(/r是换行/n是将光标移动到行首) \nLinux下正常 int fputs( const c...

C++最快的读取文件的方案(scanf,cin(及取消sync),fread)的详细对比

竞赛中,遇到大数据时,往往读文件成了程序运行速度的瓶颈,需要更快的读取方式。相信几乎所有的C++学习者都在cin机器缓慢的速度上栽过跟头,于是从此以后发誓不用cin读数据。还有人说Pascal的rea...

fgetws和fread读取不同编码文本文件时的结果

之前C++程序读取txt文件时遇到了乱码问题,主要涉及到liang

ubunt下c库函数fread不能读取的问题

最近工作比较清闲,于是闲着没事翻着看《C缺陷与陷阱》,在第五章库函数这一章节的时候,提到了不能自由的同时读写文件。即不能fwrite写之后,立刻fread读取。        正好电脑上有安装好的u...

sparkR通过data.table中的fread函数读取大数据集

spark集群搭建及介绍:敬请关注 数据集:http://pan.baidu.com/s/1i4yMwHB 总结:sparkR通过data.table中的fread函数读取大数据集,相比于正常读取...

fread读取大文件以及返回值问题

今天fread文件读取遇到问题,本来很小的一个问题,但是一直没有注意到,导致花了不少时间调试,所以写下来备忘一下。 size_t fread ( void * ptr, ...

C语言数据块读写函数:fread和fwrite

原文链接:http://www.letuknowit.com/archives/105     在前面曾经介绍过C语言中的各种读写函数,首先是最简单的读写一个字符的函数fputc和fgetc,在...

C语言数据块读写函数:fread和fwrite

C语言中的各种读写函数,首先是最简单的读写一个字符的函数fputc和fgetc,在这个基础上又出现了putw和getw、fgets和fputs,此外还说过格式化读写函数fprintf和fscanf函数...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)