1.准备M文件 simpleProduct.m

function c = simpleProduct(a,b)
c=a*b;

2.在matlab工作界面输入coder,输入工程名称 simpleProduct

3.在工程中添加simpleProduct.m文件

4.定义输入变量a,b的数据类型

5.生成mex函数,测试程序是否正确

6.生成C代码,勾选Generate code only

7.在当前目录的  codegen/lib/simpleProduct/ 下可以看到生成一堆.c 和 .h 文件

$ ls codegen/lib/simpleProduct/
buildInfo.mat   rt_nonfinite.h              simpleProduct_ref.rsp
html            rtw_proj.tmw                simpleProduct_rtw.mk
rtGetInf.c      rtwtypes.h                  simpleProduct_terminate.c
rtGetInf.h      simpleProduct.c             simpleProduct_terminate.h
rtGetNaN.c      simpleProduct.h             simpleProduct_types.h
rtGetNaN.h      simpleProduct_initialize.c
rt_nonfinite.c  simpleProduct_initialize.h

8.新建一C的工程,将codegen/lib/simpleProduct/ 下的所有.c和.h文件均复制到该工程,并新建一 main.c文件,其内容如下:

  1. #include<stdlib.h>   
  2. #include<stdio.h>   
  3. #include"simpleProduct.h"   
  4. #include"simpleProduct_initialize.h"   
  5. #include"simpleProduct_terminate.h"   
  6.   
  7. int main()  
  8. {  
  9.     simpleProduct_initialize();  
  10.     printf("%lf",simpleProduct(5,6));  
  11.     simpleProduct_terminate();  
  12.     return 0;  
  13. }  

9.编译该工程并查看运行结果linux

转载于:https://www.cnblogs.com/wander411/p/4600812.html

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐