从原始数据和结构定义中获取所有结构字段

时间:2016-02-13 12:35:11

标签: c structure endianness

我正在寻找一种工具,它可以将结构定义和原始数据(字节对齐)作为输入并以结构化形式输出数据(显示结构的每个字段的值)。

1 个答案:

答案 0 :(得分:0)

这不容易回答,因为结构中的原始数据取决于数据对齐和填充。

你可以做的是编写一个小的C程序,将字节数组复制到结构对象中:

MyStruct struct;
char byteArray[] = { 0x10, 0x20, 0x30 };
memcpy(struct, byteArray, sizeof(struct));

然后,您可以在调试器中查看结构变量。

使用相同的编译器选项进行数据对齐和填充以编译此程序非常重要,因为它用于从结构中创建原始字节数组。