我有一些code在MATLAB中绘制三角形。
我需要能够以某种方式从我的C程序中执行这些代码来生成这些点。
这可能吗?怎么办呢?
只是一个想法: 我可以以某种方式在C语言中嵌入MATLAB代码,以便它可以在C编译器上编译吗?
答案 0 :(得分:17)
Mathworks网站有full details;调用来自C的Matlab引擎的demo video,以及Matlab to C Compiler。
答案 1 :(得分:9)
如前所述,您可以通过MATLAB Engine界面从C调用MATLAB的实时副本。
如果需要在没有MATLAB实时副本的地方使用最终产品,则可以使用MATLAB Compiler部署应用程序。但是,正如另一个答案所暗示的那样,MATLAB编译器没有将MATLAB程序转换为C代码(现在还没有完成几个版本)。相反,它会对您的MATLAB程序进行归档和加密,并将其打包到可执行或共享库中,该库可以针对MATLAB编译器运行时执行(可共享免版税)。然后可以从C。
调用可执行文件或共享库或者你可以反过来,使用loadlibrary或MATLAB的MEX interface从MATLAB调用你的C代码。
更新:从版本R2011a开始,您还可以使用MATLAB Coder直接从MATLAB语言的子集生成C代码。
答案 2 :(得分:0)
请看这个关于在C或C ++应用程序中集成MATLAB算法的演示文稿http://www.mathworks.com/videos/integrating-matlab-algorithms-in-c-or-c-applications-86431.html