在二进制模式下使用fscanf
问题描述:
在二进制模式下打开文件时使用fscanf不好?我似乎无法在互联网上找到任何合理的东西。我试图打开并阅读PPM文件,我发现this,但我不知道如果使用fscanf是好吗?使用netpbm并不好,是的。在二进制模式下使用fscanf
用fread读这个看起来很痛苦。
答
scanf
和fscanf
函数用于读取字符,例如“1234”,并将它们从字符串转换为整数。但是整数不是作为二进制文件中的响应存储的。整数本身的实际字节被存储。这些需要直接读入fread
的整数。
+0
好吧,现在我明白为什么它会工作,如果我打开文件模式,如果全部值是 darxsys 2014-10-26 21:17:30
什么是PPM文件? – 2014-10-26 16:14:10
http://netpbm.sourceforge.net/doc/ppm.html这个。我最困惑的是:每个样本都以纯二进制表示1或2个字节。 所以我想我必须在二进制模式下阅读它。 – darxsys 2014-10-26 16:15:06
一个众所周知的格式 – 2014-10-26 16:20:28