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

相关文章:

  • 2021-12-27
  • 2021-12-09
  • 2021-07-18
  • 2021-12-02
  • 2021-11-18
  • 2021-12-20
  • 2021-04-12
猜你喜欢
  • 2021-04-23
  • 2021-09-13
  • 2021-12-31
  • 2021-11-18
  • 2021-12-28
  • 2021-12-06
  • 2021-12-26
  • 2021-08-09
相关资源
相似解决方案