C ++以二进制形式读取整个文件并在屏幕上打印

时间:2014-01-13 01:08:40

标签: c++ iostream

我真的试图不去问这个问题,但经过几天的搜索后,它就开始了。

我需要编写一个程序,打开一个名为“input.bin”的文件,并在屏幕上以二进制格式打印出来。

虽然它为每个字节执行此操作,但它会将00000101添加到每个字节并将其打印在“result.bin”

    (for example 01001010
                +00000101
                =01001111
and 11111111
   +00000101
   =00000100)

1 个答案:

答案 0 :(得分:1)

对我来说,显式编写代码太简单了,但这应该可以帮到你:

  • 打开“input.bin”以读取二进制文件
  • 打开“output.bin”进行写入
  • 读取每个字节,使用辅助功能在屏幕上打印二进制值
  • 添加5(不需要做任何特殊的事情,只需添加5并确保使用unsigned char类型)并将字节值写入output.bin
  • 当EOF时,删除(“input.bin”);并重命名(“output.bin”,“input.bin”);

有关一次阅读单个字符并检查EOF的良好提示:http://www.cplusplus.com/reference/cstdio/fgetc/

为了打印二进制数字,问题已被多次回答: Is there a printf converter to print in binary format?