通过 地址直接调用函数

it2024-08-07  38

C语言 STM32 keil MDK环境 如何把变量定义到指定地址

https://blog.csdn.net/duibudui11/article/details/99688579?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

用Keil仿真调试查看变量内存地址被篡改的方法

https://blog.csdn.net/mealu00/article/details/103461857

 

程序编译后    可以在 .map 文件中找到指定函数的地址

可以地址就是函数指针,可以通过 改函数指针直接调用函数 

例如

 

uint8_t test_fun(uint8_t a,uint8_t b) {     uint8_t ret = a + b;     return ret; }  

typedef  uint8_t (*TestFunPType)(uint8_t,uint8_t);                //定义一个函数类型的参数.    TestFunPType pTestFun = TestFunPType (函数地址);

pTestFun(2,3) = 5

 

最新回复(0)