fread参数分析
来源:互联网 发布:python unicode转utf8 编辑:程序博客网 时间:2024/05/21 14:55
尽管这个问题很简单,而且百度百科也都能找到解释。但还是觉得有问题
函数原型:size_t fread ( void *buffer, size_t size, size_t count, FILE *stream) ;
百度百科上给出的例子 fread
(buf,
strlen
(msg)+1,1,stream);即第三个参数为1,第二个参数为一个大小。
个人实验了一下。
while(feof(fd)==0)
{
len=fread(buf,1,sizeof(buf),fd);
debug_blue("--------------%d\n",len);
count+=len;
}
当第二个参数为1,读取sizeof(buf)个字节。能正常读取完文件。
而当len=fread(buf,sizeof(buf),1,fd);
while(feof(fd)==0)
{
len=fread(buf,1,sizeof(buf),fd);
debug_blue("--------------%d\n",len);
count+=len;
}
即第三个参数为1时,除了当第二个参数也为1时,结果正确。其余都读取不完。就算能读取完,效率也是非常低的。文件多大就需要循环多少次。
所以当用的fread函数时,尽量用len=fread(buf,1,sizeof(buf),fd);这种形式,不会出错,而且效率高
0 0
- fread参数分析
- MATLAB fread函数分析
- MATLAB fread函数分析
- fread()和fwrite()函数分析
- fread()和fwrite()函数分析
- fread()和fwrite()函数分析
- x264源代码分析1。fread()
- fread()和fwrite()函数分析
- fopen与fread函数分析
- fread
- fread
- fread
- fread
- fread
- fread
- fread
- fread
- fread
- SVN服务器搭建和使用(三)
- mysql处理添加外键时 error 150 问题
- squid服务器
- 使用git进行小项目代码管理
- Nginx中502和504错误详解
- fread参数分析
- [系统架构]分布式日志收集系统
- MySQL字段类型详解
- IOS UITableViewCell通过Nib加载并复用View
- javascript时间自行走效果
- 编译只包含h264 decoder的ffmpeg
- 302跳转
- UITextView上添加默认文字
- Python guide 2.1.5 装饰器(Decorators) 2.1.6动态绑定(Dynamic typing)