为了向一个文件末尾写入播放参数,比如图像宽度2560,使用fwrite的a+写入int型时,发现实际写入文件的数据是000d0a0000,理论上应该是000a0000,多了个0d;再使用fread读取的时候发现读出来的又是2560没错。
最后发现,a+写入的是字符数据,因此会对其进行处理,写入的数据和int值会存在部分不匹配的情况,当写入模式修改为ab+时,数据就没问题了。
为了向一个文件末尾写入播放参数,比如图像宽度2560,使用fwrite的a+写入int型时,发现实际写入文件的数据是000d0a0000,理论上应该是000a0000,多了个0d;再使用fread读取的时候发现读出来的又是2560没错。
最后发现,a+写入的是字符数据,因此会对其进行处理,写入的数据和int值会存在部分不匹配的情况,当写入模式修改为ab+时,数据就没问题了。