matlab程序轉換成C語言

    要將用Matlab語言編寫的函數文件編譯成可獨立執行的*.exe文件(即可脫離Matalab環境的執行程序),首先要安裝和配置好Matlab Compiler,一般來說,在安裝Matlab時就已經安裝了相應版本的Matlab Compiler。只是不同版本的Matlab,其編譯器的使用方法有一定的差異,這一點要引起一定的注意。
    在確定安裝好Matlab Compiler後,還需要對Compiler進行適當的配置,方法是在Matlab命令窗口輸入:
        Mbuild –setup
        然後根據提示執行相應的操作,使用者可根據自己計算機中現有編譯器的情況選擇合適的編譯器,如VC++ 6.0、VC++7.0、Bland C的編譯器等,目前Matlab好象還不支持VC++8.0(我計算機安裝的就是VC++2005,Matlab就無法識別)。當然,如果你的計算機里根本就沒有安裝其他任何語言的編譯器,也可選擇Matlab自帶的Lcc編譯器,其實這個編譯器對大多數用戶已經夠用了(我就是選擇的Matlab自帶的Lcc編譯器)。
配置好編譯器後,自然就是對自己編寫的M文件進行編譯了。
將M文件編譯爲獨立可執行文件的語法是:
        >>mcc –m fun1.m fun2.m…..
        其中fun1就是最後的可執行文件的名稱。
另外,也可通過採用命令開關-o指定編譯最終目標文件的名稱,如 mcc –m main.m –o mrank_main,就是將編譯後的文件指定爲mrank_main.exe。
編譯後的生成文件根據編譯器的版本不同而不同。具體的可參閱相關資料。
如果要在沒有安裝matlab的計算機上執行編譯後的程序,首先要將\MATLAB701\toolbox\compiler\deploy\win32中的MCRinstaller.exe安裝到該計算機上(7.0以前的版本是mglinstaller.exe)。
    其次是要將“MCRinstaller.exe安裝目錄\runtime\win32”這個路徑添加到該計算機的環境變量中,添加的方法是:
右擊“我的電腦”“屬性”“高級”“環境變量”“添加”指定一個變量名,然後將上述路徑複製到裏面就可以了。
    第三步是將編譯生成的相相關文件拷貝到同一目錄下(當然其他目錄亦可)。
    第四步是打開MS-dos操作窗口,進入到編譯後的*.exe程序所在的目錄,執行編譯生成的*.exe文件即可。
    需要說明的一個問題:
    如果你的程序還附帶有圖片(如Version上的圖標)、Web頁面(如help文檔),在編譯的時候可能無法與M文件一起編譯(因爲我沒有試過,也沒有看到有關這方面的介紹),這沒有關係,先在計算機上執行一次你編譯後生成的獨立可執行文件,這時在同一目錄下會生成一個以你編譯後的程序名+_mcr結尾的文件夾,這時,你只需要把與程序相關的圖標和Web頁面拷貝到該文件夾中的Matlabprogram下面的一個子目錄(一般與用於編譯的文件夾名相同)中即可。
from:http://www.ilovematlab.cn/thread-61004-1-1.html
 
   matlab設計算法很簡單,但是在c上去實現就比較麻煩了,採用matlab自帶的mcc鏈接工具可以方便快速地將需要的m
文件轉換爲c文件。將m文件轉換爲c文件有一個很重要的地方需要注意:m文件的開頭必須是function[輸出參數1,輸出參數2,...]=m文件名(輸入參數1,輸入參數2.....)。否則的話,會提示"...is a script M-file and cannot be compiled with the current Compiler."
 
實例,將以下語句編寫爲m文件保存。 
function[yfft]=tstmcc( );
y=[1,2,3,5,8];
yfft=fft(y,100);
在matlab下執行mcc -t -l tstmcc.m即可生成c和h文件。
from:http://blog.sina.com.cn/s/blog_3e4367660100otg4.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章