当前位置:  技术问答>linux和unix

fread函数的疑问。。

    来源: 互联网  发布时间:2016-12-30

    本文导语:  我用long i=fread(char *dest,1,len,fd)来从文件读取数据。 为什么返回的时候,i=1000多。。也就是读了1000多个字节! 而我用strlen(dest)来取长度。。确只有200多。。 为什么呢? | i的值应该是...

我用long i=fread(char *dest,1,len,fd)来从文件读取数据。
为什么返回的时候,i=1000多。。也就是读了1000多个字节!

而我用strlen(dest)来取长度。。确只有200多。。

为什么呢?

|
i的值应该是根据你指定的len来决定的,除非读到文件结束。
读出来的数据里有,用strlen取到的自然不等于i。

|
1、你读的文件内容是文本还是二进制?二进制文件是有可能出现''的。
2、调试查看dest的内存,与你的文件内容对比,看看是否相同,大小是否相等。

我也同意1楼的看法。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • FILE* stream fread fwrite 的使用方法
  • 关于fread是否会阻塞的问题
  • fread 和 fgets的选择?
  • read/write 和 fread/fwrite 有什么区别
  • 关于fopen,fread,fgets的问题,请教
  • fread和read
  • 请问 fread(pDataBuf,1024*1024*100,1,*pfile);可以一次读出这么多数据吗?
  • read()和fread()
  • fread时总是提示段错误是什么原因?
  • open与fopen,read与fread用哪个比较好?
  • read/write已经有了缓冲实现,为什么fread/fwrite还要实现缓冲?
  • 同样的代码,换个系统编译就出事了,/usr/include/bits/stdio2.h:282: undefined reference to `__fread


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3