当前位置: 技术问答>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=1000多。。也就是读了1000多个字节!
而我用strlen(dest)来取长度。。确只有200多。。
为什么呢?
|
i的值应该是根据你指定的len来决定的,除非读到文件结束。
读出来的数据里有,用strlen取到的自然不等于i。
读出来的数据里有,用strlen取到的自然不等于i。
|
1、你读的文件内容是文本还是二进制?二进制文件是有可能出现''的。
2、调试查看dest的内存,与你的文件内容对比,看看是否相同,大小是否相等。
我也同意1楼的看法。
2、调试查看dest的内存,与你的文件内容对比,看看是否相同,大小是否相等。
我也同意1楼的看法。