matlab 自動生成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.編譯該工程並查看運行結果linux


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM