要对绝对地址0x100000赋值,我们可以用
(unsigned int*)0x100000 = 1234;
那么要是想让程序跳转到绝对地址是0x100000去执行,应该怎么做?
*((void (*)( ))0x100000 ) ( );
首先要将0x100000强制转换成函数指针,即:
(void (*)())0x100000
然后再调用它:
*((void (*)())0x100000)();
用typedef可以看得更直观些:
typedef void(*)() voidFuncPtr;
*((voidFuncPtr)0x100000)();

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-06
  • 2021-06-20
  • 2021-12-13
  • 2021-10-07
  • 2021-06-30
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-04-15
  • 2021-12-21
  • 2021-04-23
  • 2021-05-23
  • 2022-02-08
相关资源
相似解决方案