我正在使用pyelftools来读取精灵文件。如何获得结构中成员的偏移值或地址?例如,假设我在C中有以下结构。
typedef struct
{
int valA;
} TsA;
typedef struct
{
int valB;
} TsB;
typedef struct
{
int valC;
TsB b;
} TsC;
typedef struct
{
TsA a;
TsC c;
} TsStruct;
TsStrcut myStruct;怎样才能得到myStruct.c.b.valB的地址?我找到了一个类似的问题,这里,但没有找到任何好的答案。
发布于 2022-01-24 20:45:28
查找结构的模具,标记为DW_TAG_structure_type和DW_AT_name的模具等于结构名称。
枚举它下面的DW_TAG_member子元素。在这里,看看DW_AT_member_location,它是对应的结构元素的偏移量。
如果你先从视觉上看一下模具结构,也许会有帮助。矮人探险家可能会有所帮助(免责声明:我写的)。
https://stackoverflow.com/questions/70795202
复制相似问题