Matlab2012Ra由M文件产生C代码


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.编译该工程并查看运行结果

相关内容