Hack C,调用脚本func而不是C函数?

时间:2010-11-20 02:04:56

标签: c scripting tuples

情况有点奇怪,但请耐心等待。我需要一种可以在C中轻松调用的脚本语言(不是cpp,C)。优选地,脚本函数可以被称为常规C函数。我需要使用脚本语言来使用元组,所以我可以写下面的内容。保持我的废话,我只是希望能够返回元组。返回类型必须是ptr,所有输入都是void *(tuple),int或char *

myfunc(a, b, c, d) {
    a.b = b
    a.z = anotherFunc(b,c)
    return a, d
}
myfunc2(z) {
    a, d = z
    return d+4, a+1
}

3 个答案:

答案 0 :(得分:4)

查看Lua,尤其是API for calling from C。你应该能够用它做你需要的。

答案 1 :(得分:0)

可以嵌入

Python。请参阅Embedding Python in Another Application

答案 2 :(得分:0)

看看Ruby。它是made for calling from C(因为它用C语言编写),界面非常简单。另外,你会得到一种非常强大的语言 - 与Lua不同。

作为奖励,它与您指定的函数调用接口紧密匹配:

  

返回类型必须是ptr,所有输入都是void *(tuple),int或char *

这正是Ruby的函数调用接口所支持的。