标题:
代码重定位问题!!!
[打印本页]
作者:
reporter
时间:
2013-9-26 10:26
标题:
代码重定位问题!!!
本帖最后由 乌月明星稀 于 2013-9-25 23:17 编辑
#include "stdio.h"
void a()
{
        printf("This is test!\n");
}
char CodeArr[100];
void main()
{
    char temp;
    char *Pcopy=(char*)a;
    for(temp=0;temp<100;temp++)
    {
            CodeArr[temp]=Pcopy[temp];//代码拷贝
    }
    ((void(*)(void))CodeArr)();    //强制转换为void (*)(void)函数类型
}
我的想法是:将代码a拷贝到CodeArr中,然后用CodeArr强制转换为函数指针,执行到拷贝后的函数中去,但实际会导致整个main进程死掉。
求高手指点,如何用C编译可重定向代码。环境是Windows的C编译器
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0