如何解析结构体?
在某个工程里定义了一个结构体,当然这个结构体放在一个.c 文件中。同时产品在运行的时候会把与这个结构体对应的变量存储到一个文件中。现在我想做一个工具将文件中的数据根据结构体的定义给还原对应出来。
比如在一个 def.c 中,有这样一个结构体
struct A
{
int time;
int num;
}
系统在运行的时候,每隔1秒会将这个结构体对应的数据存入到一个叫data.txt 的文件中。比如:
(time)16 (num)100
(time)17 (num)150
我现在已经拿到这个data.txt文件,然后将数据读取出来。
问题在于,这个结构体是个复合结构体,另外就是这个结构体很可能成员会有变化。 我想通过解析对应的.c文件,实现只要导入这个.c文件,再导入对应的data文件就能实现把数据解析的功能。
否则如果我在工具里仿照.c中的结构体声明一个再解析,那么每次成员变化时我都要修改工具代码。这是非常麻烦的。不管这个结构体变成什么样子,我只要导入对应的.h文件就能把数据解析。
这个东东是不是涉及到编译器了啊,不知道怎么实现。