2012-01-05 90 views
3

有一些字符串代码:如何以编程方式检查源代码编译?

std::string code = "int main(){return 0;}" 

我可以使用哪些工具来检查这是否是合法的C++代码?类似的东西

checker.checkCPPcode(code) which returns bool 

会很好。

+8

编译器,还有什么? – 2012-01-05 10:55:42

+3

为什么不把它写到一个临时文件上,运行正常的C++编译器,并检查返回码? – 2012-01-05 10:56:50

+0

[解析C/C++源代码的库](http://stackoverflow.com/questions/2318347/library-to-parse-c-c-source-code) – Sjoerd 2012-01-05 10:56:51

回答

6

g++这样的C++编译器会完成这项工作。将字符串写入临时文件,在文件上运行g++ -fsyntax-only,并对返回值进行操作。

2

您可以将该字符串的内容粘贴到新创建的cpp文件中,并运行g++或其他可以使用的编译器并检查编译器的输出。

+0

为什么downvote? – 2012-01-05 12:03:32

相关问题