有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (4) 个答案

  1. # 2 楼答案

    这将取决于语言和您想要的集成类型

    所有这些语言都允许您执行系统命令,因此您可以将C构建为可执行文件,并像命令一样调用它。在Python中:

    os.system("myccode -v args etc")
    

    这种方法的缺点是,您不共享任何内存状态,也不返回很多信息,并且会增加进程旋转的开销。从好的方面来说,它可以在任何地方使用,而且技术含量非常低

    每种语言都有自己的机制在同一进程中调用C。例如,Python有C API,您可以将C代码构建到Python扩展中。这允许进行非常紧密的集成,但在学习C API和仔细编写代码以避免内存泄漏方面需要做更多的工作

    Python还提供了ctypes,它可以调用C DLL。这比完整的C扩展要容易一些,但并不能提供所有相同的集成机会

  2. # 3 楼答案

    使用Swig,您可以为调用任何C/C++函数的多种语言生成代码。 http://www.swig.org/

  3. # 4 楼答案

    那真的取决于语言。。。有些语言可以直接绑定到c/c++库,而java等其他语言则需要编写显式接口。如果你想解决一个特定的问题,我建议你提供更多关于你想做什么的细节