2012-10-14 59 views
0

我正在处理一个嵌入式处理器的项目,其中有一些在运行时创建的数据,并且指向此数据的指针需要排列到几个二叉树 - 如程序使用的数据结构。C数据结构 - 存储二叉树的表示

这些结构将在程序期间得到修复,但是,我希望在编译时选择能够快速更改所用树的结构。对于所涉及的每一棵树来说,一个函数或宏可以重复地调用“AddNode”函数,以适合树中每个底层数据元素和节点的顺序调用“AddNode”函数。感谢您的任何建议!

+1

如何创建树的文字表述,并保存在一个字符串,然后解析它来构建树?然后可以在编译时切换使用哪个字符串。 –

+1

我通常使用创建结构内存映像的实用程序,直接以二进制形式或符号形式,通过链接器或实用程序完成修订。 –

+0

谢谢 - 这些都是有吸引力的建议。 – Bitrex

回答

1

如何使用M4预处理器实现高级伪语言来生成构建树所需的C代码?您的代码可能具有一个称为的函数,例如initTrees(),它的主体将由M4自动生成,该文件的内容将是所需树形结构的描述。整个过程将如下所示:

sample.c.m4 ---> [M4] ---> sample.c文件---> [C编译器] --->二进制文件

http://www.gnu.org/software/m4/

http://en.wikipedia.org/wiki/M4_(computer_language

+0

谢谢,这当然值得考虑! – Bitrex

+0

不客气;-) – Claudix