C-指针算术使用的机器代码测试器框架

时间:2018-09-09 14:59:56

标签: c pointer-arithmetic

我在网上用C编写了类似形式的机器代码测试器。

测试器使用指针算法来运行机器代码的缓冲区。

#include <stdio.h>
#include <string.h>

unsigned char code[] = \
"machine code to be executed";

void main() {
    int (*ret)() = (int(*)())code;
    ret();
}

谁能解释两者的指针算法背后的逻辑 上面显示的行?

1 个答案:

答案 0 :(得分:5)

  

有人能解释上面介绍的两行指针算法背后的逻辑吗?

没有指针算法。该代码仅声明一个变量(ret),其类型是指向不带参数且返回int的函数的指针。它将变量设置为指向code,该变量可能包含机器代码的实际字节,然后使用它进行函数调用。