【问题标题】:Need a calc example for ANTLR3需要一个 ANTLR3 的计算示例
【发布时间】:2010-01-02 21:52:19
【问题描述】:

我已经在我的 Windows 上成功安装了 ANTLR3 并将其绑定到 Visual Studio,但是...

谁能给我看一个 C++/ANTLR 中计算器的工作示例?和 distrib 一样,都是用 Java 写的。

我很难做到。我将 std::map<:string double> 用于命名表,但无法从 @header 加载 C++ 头文件,因为所有生成的文件都完全在 C 中(对于 C++ 编译器使用隐式 extern "C"),甚至 cstdlib 也可以不编译。当我在 main.cpp 中编写包装函数并从 lexer/parser 加载它们时,我收到一条奇怪的错误消息。最后,我有以下一个,我不知道它是什么。

Antlr3c.lib(antlr3lexer.obj) :找到了 MSIL .netmodule 或使用 /GL 编译的模块;重新启动与 /LTCG 的链接;将 /LTCG 添加到链接命令行以提高链接器性能 链接:警告 LNK4075:由于“/LTCG”规范而忽略“/增量” 创建库 D:\antlr_usage\Debug\antlr_usage.lib 和对象 D:\antlr_usage\Debug\antlr_usage.exp 链接:警告 LNK4098:defaultlib 'MSVCRT' 与使用其他库冲突;使用 /NODEFAULTLIB:library

【问题讨论】:

  • 感谢您对我的回答的回复。我不再清楚你想要什么。 Antlr 3 还没有 C++ 目标,所以你能做的最好的就是 Antlr 2 中的 C++ 答案,我向你展示了从哪里获得。你还想要什么??

标签: c++ antlr calculator


【解决方案1】:

不幸的是,Antlr 3 还没有发布 C++ 目标。但 Antlr v2 确实有一个很棒的 C++ 目标以及一个示例 Calc 程序。

Antlr v3 确实有一个C 目标。如果您想查看它的示例,可以在此页面上找到它们:

http://www.antlr.org/api/C/index.html

或者不耐烦的人在这里:) http://www.antlr.org/download/examples-v3.tar.gz

如果您想查看 Antlr V2 C++ Calc 示例并尝试将其调整为在 Antlr v3 中使用 C,您可以在此处下载: http://www.antlr.org/api/C/index.html

【讨论】:

  • @Anthrax Gamma But I have a tradition to use Google before asking a question, so you didn't tell me anything new. 那么你应该把它放在问题中,这样人们就会知道你已经尝试过什么。提出好的问题是一门难学的艺术:)
猜你喜欢
  • 2017-08-01
  • 1970-01-01
  • 2011-09-03
  • 2023-03-25
  • 1970-01-01
  • 2011-11-15
  • 1970-01-01
  • 1970-01-01
  • 2019-02-20
相关资源
最近更新 更多