C++头文件解析
回答
解析C++很困难。您可能想要使用现有的解析器。我知道的4那可能是有用的:
- 爱迪生设计集团前端
- 锵的C++解析器
- DMS软件再造工具包和C++ 14的前端
- GCC(通过熔融)
其中大多数不会“解析”宏;他们想要扩展他们使用预处理器。所以宏和PP条件从解析树中消失。 DMS可以进行“有限”的预处理,并收集/保留在结构良好的地方以及它们常见的各种地方发现的预处理器指令和宏。
解析头文件是真的艰难;他们往往会加载来自许多以前版本软件的条件和垃圾,以及来自特定供应商的成语。 (MS的标题中有一些惊人的怪异东西)。除非你正在讨论解析你的头文件,否则确保你检查你选择的工具可以处理你实际处理的C++方言。
感谢您的信息。但我的问题是,我需要在运行时读取头文件的内容。在运行时,我需要解析头文件中的结构并存储在内存中。你能提出建议吗? – IPS 2015-03-03 07:21:20
在运行时?然后,您需要找出一种方法,在应用程序启动后将这些小狗加载到您的应用程序空间中(我敢打赌这真的很尴尬),将您的应用程序*移植到这些(更可能)的*中,或者调用其中的一个作为一个需求子进程。你试图完成什么,需要在运行时读取这些数据? – 2015-03-03 11:25:05
- 1. Objective-C头文件解析
- 2. 解析C中的C头文件#
- 3. 解析文件头文件
- 4. C#中的头文件解析器?
- 5. C,解析一些http头文件
- 6. 如何解析C头文件?
- 7. FOSRestBundle解析头文件
- 8. 解析fasta文件头
- 9. 解析C文件
- 10. 解析C头文件以生成文件
- 11. PE文件解析c/C++
- 12. 解释头文件在C
- 13. C#:解析文本文件
- 14. C#解析文本文件
- 15. 解析c中的c/C++/c#文件#
- 16. 解析C++中的文件
- 17. C#中的文件解析#
- 18. 解析CSV文件C++
- 19. 解析C源文件
- 20. C++解析文件路径
- 21. 解析JSON文件C#
- 22. Objective-C解析XML文件
- 23. 解析在C#csv文件
- 24. C#解析XML文件
- 25. C#解析XML(.xspf文件)
- 26. C#解析XML文件
- 27. TIFF文件解析C#
- 28. 用C解析XML文件#
- 29. INI文件解析器C
- 30. csv解析器读取头文件
http://clang.llvm.org/doxygen/group__CINDEX.html – deviantfan 2015-03-03 06:46:20
@deviantfan您可以请解释如何使用该API。因为我需要解析包含超过100个结构的完整头文件并找到我需要的结构。然后我需要读取结构变量及其偏移量以将其存储在内存中。 – IPS 2015-03-03 06:51:47
@HariPrabhakaran:不要指望处理C++复杂性的设备的API“简单”。您将不得不支付学习如何使用C++解析引擎的费用,并且还需要花费您在代码中学习C++黑暗角落的代价,以及API如何处理这种类型的东西。 – 2015-03-03 06:56:18