将函数的二进制代码嵌入到程序中
#include <stdio.h> /* int f(int *a, int *b) { return *a - *b; } */ //函数f的二进制代码 char f[]= "\x55" "\x89\xe5" "\x8b\x4d\x08" "\x8b\x45\x0c" "\x8b\x10" "\x8b\x01" "\x29\xd0" "\x5d" "\xc3"; typedef int(*FP)(int*,int*); int main(int argc, char* argv[]) { int x=66, y=5; FP pf = (FP)&f; printf("%d\n",pf(&x, &y)); return 0; }
posted on 2013-07-27 17:04 Sunny_NUAA 阅读(255) 评论(0) 收藏 举报