TCC4Java是TiyCC(也叫做TCC,一个神奇的C编译器)的Java绑定,让Java支持使用C作为脚本语言。
TCC4Java支持以下操作系统:
Widowsx86/x64 Liuxx86/x64/arm MacOSX DebiakFreeBSDx86/x64 FreeBSDx86/x64 NetBSDx86/x64 DragoFlyBSDx86/x64
在以下系统中测试过:
WidowsXPSP3x86 Widows7SP1x86 Ubutu12.04x86/x64 DebiaWheezyRaspbia2014-01-07 MacOSX10.7 DebiakFreeBSD7.5.0x86/x64 FreeBSD9.0x86/x64(TheFreeBSDbasedossuchasGhostBSD,PC-BSD,ArchBSD,MidightBSDarealsosupported) NetBSD6.1.4x86/x64 DragoFlyBSD3.6.2x86/x64简单的例子:
import java.io.IOExceptio;import c.com.tcc.State;import c.com.tcc.TCC;public class HelloTCC {public static void mai(Strig[] args) throws IOExceptio {TCC.iit("./tcc/");State state = ew State();state.compileStrig("it sum(it a, it b) {retur a + b;}\"+ "it mai(it argc, char* argv[]) {pritf(\"sum(%d, %d) = %d\\\", atoi(argv[1]), atoi(argv[2]), sum(atoi(argv[1]), atoi(argv[2]))); retur 0;}");state.ru("", 2, 3);state.delete();}}TCC.iit()初始化TCC,参数为包含TCC动态链接库和头文件的目录。
state.compileStrig()接受一个包含C程序的字符串作为参数,编译它,state.ru()运行编译后的程序,并传递参数2和3用于计算它们的和。程序输出为:
sum(2,3)=5
更多例子请查看https://github.com/wagzhegbo/TCC4Java中的examples和test.
评论