1

考虑 :

int x[] = {1, 2, 3};

int main(){
    return 0;
}

如果我们对数据部分进行 objdump,我们将得到变量 x,其起始地址和大小为 (4*3) 字节。有没有简单的方法来检索 x 是一个数组以及什么类型的信息?

我知道我们可以使用 dwarfdump -i a.out 来做到这一点,然后解析结果以达到同样的效果,但是有什么更简单的方法可以做到。我只需要检查它是否是一个数组以及什么类型?

问候,

潘卡伊

4

1 回答 1

0

您可以使用 elfutils 中的 DWARF 读取库来解析 DWARF,找到变量,然后解码其类型。这不是微不足道的,但图书馆确实有点帮助。

于 2013-09-16T02:21:38.123 回答