Need a calc example for ANTLR3
I've succesfully installed ANTLR3 on my Windows and bound it to Visual Studio, but...
Could anybody show me a workin开发者_开发百科g example of calculator in C++/ANTLR? The same as from distrib, which is written in Java.
I have a trouble making it. I use std::map<std::string, double> for nametable, but one cannot load C++ headers from @header, because all generated files are totally in C (with implicit extern "C" for C++ compiler) and even cstdlib can't compile. When I've coded wrapper functions in main.cpp and loaded them from lexer/parser, I got a strange error message. Finally, I've got the following one and I don't give an idea on what it is.
Antlr3c.lib(antlr3lexer.obj) : MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance LINK : warning LNK4075: ignoring '/INCREMENTAL' due to '/LTCG' specification Creating library D:\antlr_usage\Debug\antlr_usage.lib and object D:\antlr_usage\Debug\antlr_usage.exp LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library
Unfortunately there isn't a release C++ target yet for Antlr 3. Antlr v2 however does have a great C++
target as well as a sample Calc program.
Antlr v3 does have a C
target. If you want to look through it's samples you can find them on this page:
http://www.antlr.org/api/C/index.html
Or right here for the impatient:) http://www.antlr.org/download/examples-v3.tar.gz
If you want to see the Antlr V2 C++ Calc example and try to adapt it to use C in Antlr v3, you can download it here: http://www.antlr.org/api/C/index.html
精彩评论