问题描述
最近在写另一篇文章
https://blog.youkuaiyun.com/Henyry/article/details/122160497的代码时产生了非常奇怪的bug,现跟大家分享。如图,对二进制文件中的数组进行写入和读取,727777
出现乱码,但是比它大的
72777777 和比它小的 727
都可以正常输出,问题出在哪里?

解决方法
仔细观察就会发现,文件打开的参数出现了问题,
w
和
r
适用于文本文件打开,而使用二进制文件读写函数对二进制文件读写应该使用 wb
和
rb
,即二进制文件打开参数,修改后的代码就可以正常输出了。
