c语言怎么读取二进制文件?

c语言怎么读取二进制文件?,第1张

main()

{

FILE * stream

int i

stream = fopen("/tmp/fwrite","r")

fread(s,sizeof(struct test),nmemb,stream)

fclose(stream)

for(i=0i<nmembi++)

printf("name[%d]=%-20s:size[%d]=%d/n",i,s[i].name,i,s[i].size)

}

供参考

C语言中二进制文件的读取要用fread和fwrite来实现。 fwrite()与fprintf()是不同的。 fwrite将写入的数据作为文件的磁盘内容保存。fprintf将写入的数据的每个字符所对应的ASCII码作为文件的磁盘内容保存。fprintf做了一个转换的工作。

你怎么输出的?

二进制如果以文本输出,自然会有很多乱码

你可以用"%x"格式输出看看

char

a

a=fgetc(fp1)

printf("%c",

a)/*这样肯定有乱码*/

printf("%x",

a)/*这样就是16进制*/


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6891403.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-29
下一篇 2023-03-29

发表评论

登录后才能评论

评论列表(0条)

保存