A学习的小菜鸟 发表于 2020-1-8 15:10

求助两个结果为什么不同

本帖最后由 A学习的小菜鸟 于 2020-1-9 11:00 编辑

题目为
模拟实现CE的数据搜索功能:                                                                                       
      这一堆数据中存储了角色的血值信息,假设血值的类型为int类型,值为100(10进制)                                       
      请列出所有可能的值以及该值对应的地址.                                                                              
      0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x07,0x09,                                       
      0x00,0x20,0x10,0x03,0x03,0x0C,0x00,0x00,0x44,0x00,                                       
      0x00,0x33,0x00,0x47,0x0C,0x0E,0x00,0x0D,0x00,0x11,                                       
      0x00,0x00,0x00,0x02,0x64,0x00,0x00,0x00,0xAA,0x00,                                       
      0x00,0x00,0x64,0x10,0x00,0x00,0x00,0x00,0x00,0x00,                                       
      0x00,0x00,0x02,0x00,0x74,0x0F,0x41,0x00,0x00,0x00,                                       
      0x01,0x00,0x00,0x00,0x05,0x00,0x00,0x00,0x0A,0x00,                                       
      0x00,0x02,0x74,0x0F,0x41,0x00,0x06,0x08,0x00,0x00,                                       
      0x00,0x00,0x00,0x64,0x00,0x0F,0x00,0x00,0x0D,0x00,                                       
      0x00,0x00,0x23,0x00,0x00,0x64,0x00,0x00,0x64,0x00                                       
我写了两个程序,但是发现两个搜出来的结果不同,我想知道哪个是对的,那个是错的,错在哪里了?求大神解一下疑惑

Lopht 发表于 2020-1-8 15:39

就是找出0X64对应的地址呗。
你自己看的输出,上面下面所有的输出正好偏移4,因为你下面的printf语句加了偏移4,而上面没有,所以有差别。

A学习的小菜鸟 发表于 2020-1-9 11:01

Lopht 发表于 2020-1-8 15:39
就是找出0X64对应的地址呗。
你自己看的输出,上面下面所有的输出正好偏移4,因为你下面的printf语句加了 ...

不好意思,代码一个贴错了,这是正确的两个,你再看看吧{:1_893:}
页: [1]
查看完整版本: 求助两个结果为什么不同