c2go-goplus 将 C 转译为 Go开源项目

我要开发同款
匿名用户2022年03月30日
260阅读

技术信息

开源地址
https://github.com/goplus/c2go
授权协议
Apache

作品详情

c2go是一个将C代码转译为Go代码的项目。c2go把整个转换过程分为这样几个步骤:

首先,用C语言的预处理程序(preprocessor)解决掉宏和各种预编译指令。

其次,生成的C代码再通过llvmproject中的clag命令行进行解析(parser):

  clag-Xclag-ast-dump=jso-fsytax-oly[C源文件...]

这样就得到C语言的抽象语法树(CAST)。接着,就是将CAST转为GoAST。然后通过GoAST调用go/format这个标准库来生成Go源文件,最后用Go编译器编译它。

功能介绍

c2go 是一个将 C 代码转译为 Go 代码的项目。c2go 把整个转换过程分为这样几个步骤: 首先,用 C 语言的预处理程序(preprocessor)解决掉宏和各种预编译指令。 其次,生成...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论