1樓:吳水淋
c語言,是一種通用的、程式式的程式語言,廣泛用於系統與應用軟體的開發。具有高效、靈活、功能豐富、表達力強和較高的移植性等特點,也就是說,c語言的目的是用與軟體開發,他有著豐富的應用支援。
相比之下,matlab是一種商業數學軟體,是一種數值計算環境和程式語言,主要包括matlab和simulink兩大部分。matlab基於矩陣運算,其全稱matrix laboratory即得名於此。它在數學類科技應用軟體中在數值計算方面首屈一指。
matlab可以進行矩陣運算、繪製函式和資料、實現演算法、建立使用者介面、連線其他程式語言的程式等,主要應用於工程計算、控制設計、訊號處理與通訊、影象處理、訊號檢測、金融建模設計與分析等領域。
2樓:網友
從c變換到matlab必然需要對演算法流程有完全的瞭解。 樓主最好把c程式的流程和演算法原理簡單說一下,這樣可以縮短花費的時間。
求c語言程式轉變成matlab語言程式高手
3樓:七殿哥哥
可以試試matlab的混合程式設計,matlab有這樣的介面。
關於乙個c語言函式改成 matlab混編 mexfunction檔案
4樓:網友
以為檔名儲存,注意,在matlab裡,三維陣列p的第3個引數是頁號,而c語言中第1個引數是頁號。
funciton y=delta_m(p, n)anser=0
for max=1:n*n
for min=1:n*n
maxj=floor((max-1)/n)+1;
maxk=mod(max-1,n)+1;
minj=floor((min-1)/n)+1;
mink=mod(min-1,n)+1;
tmp=0;
for i=1:n-1
if p(maxj,maxk,i)>p(minj,mink,i) %頁號i放在第3個引數。
tmp=tmp+p(maxj,maxk,i)-p(minj,mink,i);
endend
if (anseranser=tmp;
endend
endy=1-ans;
如何將c語言轉換成matlab?
5樓:網友
matlab 主要使用矩陣,變數是矩陣,運算是矩陣。即使是c語言中的乙個簡單變數,matlab也要視它為矩陣。
c語言程式放入matlab使用:
1)必須改寫main(){把main(){變成 matlab 入口函式 mexfunction(){2)其它功能性函式/子程式不需變化。
3)加標頭檔案 #include ""
你需要學習一下mexfunction(){如何書寫,引數意義等。這裡就不費筆墨了。
入口函式樣子:
void mexfunction(int nlhs,mxarray *plhs, int nrhs, const mxarray *prhs)
6樓:育知同創教育
沒有直接轉換的工具,二者本質不同,matlab是解釋性語言,面向的過程不同。但是matlab的語句基本上是以早期c為基礎拓展的,與c的風格比較類似,會使用c的話,matlab的使用不成問題,也就是說無需轉換,直接按照c的思路去編寫matlab程式即可。
7樓:旗逸仙
還有個方法,直接資料拷貝,在matlab中建乙個m檔案,將拷貝的資料賦予乙個變數(可以是二維矩陣)執行後,工作區的該變數即為乙個矩陣,可以將該變數儲存為。mat檔案,當然高階的方法就是用xlsread了。
8樓:胡香卉
matlab是有這個功能的, 至少我用的2007是有工具的。 至於轉的結果嘛,試過一次,很小的程式編譯就很慢了, 執行效果怎麼樣沒試。。
9樓:網友
大概可以這樣寫給點思路。
float f1(int i...
float f2(int i...
void r_k(..
替換成function r_k
f1(..f2(..
function res=f1(i..)
function res=f2()
然後將這個檔案儲存為r_就可以了。
如何把matlab的m檔案轉換成c語言?
10樓:梅森琦
matlab 自帶生成 c 語言的功能,只需要在器功能區選擇「應用程式」,找到 matlab coder,開啟,按照步驟操作即可,如圖所示。
但是它可能有諸多限制,有些內建函式無法生成 c 語言,所以如果遇到這種情況你可能需要用 c 自己實現一些功能。
matlab中的多個.m檔案轉化成exe檔案,我用過mcc但是一次只能轉換乙個.m檔案
11樓:手機使用者
+檔案。
命令的格式為:
mcc[-option]fun[fun2...mexfile1...mlifile...
轉化後的檔案預設在當前目錄中。
若m檔案多於乙個,那麼每個檔案對應轉化相應的c和c++檔案。
若原始檔包含c檔案,則將它們同新生成的c檔案一起編譯。
一些有用的option引數解釋如下:
c 轉化為c語言檔案但是不生成mex檔案或者獨立應用程式。
d指定生成的檔案目錄。
g/g 進入除錯狀態。
h 編譯幫助函式,所以的m檔案都將編譯到mex檔案或者獨立應用程式。
l《option》 指定目標語言為option,其中c,cpp,p分別代表c語言,c++,matlab語言。
m 指定建立獨立c語言應用程式的巨集,作用等於『-t-w main -l c-h-t link:exe
m"" 向mblid或者mex教本傳遞string中包含的資訊。
o指定輸出檔名。
o指定優化引數。
p 指定建立獨立c++語言應用程式的巨集 作用等於-t-w main -l cpp-h-t link:exe
v 詳細顯示編譯步驟。
x 指定建立獨立mex檔案的巨集,作用等於-t-w main -l c-t link:exe
s 轉化為simuink的s函式。
eg現有m檔案 ,主函式main中呼叫了子函式mrank
function main
r=mrank(5)
function r=mrank(n)
r=zeros(n,1);
for k=1:n
r(k)=rank(magic(k));
end在matlab環境下執行主程式可以看到結果。
mainr=1
現在要把他們轉化為c和cpp程式。
在matlab工作視窗中輸入下面命令。
mcc-mc main mrank
可以得到下面個檔案:
在matlab中輸入下面命令。
mcc -lcpp main mrank
可以得到下面5個檔案。
有了這些程式以後,就可以在其他c,c++程式中方便呼叫了。
建立獨立可執行程式。
方法1:編譯m檔案為可執行程式。
mcc -m main mrank
or mcc -p main mrank
方法2:將編譯的c c++轉化為可執行程式。
mbuild main_
ormbuild main_
12樓:網友
建議你使用copydeploytool deploy tool其實是乙個 mcc的前端介面(用mcc的命令列引數一樣可以完成編譯工作)
你開啟工具箱後 按照上面的操作就可以了。
類似於你這個主介面和子介面都可以打包進來。
13樓:網友
貌似matlab的程式執行都需要安裝matlab的環境吧。
為什麼非要生成exe呢?
怎樣用簡單C語言將A轉化成a,C語言 如何把A Z轉換成1 26?輸入一個字母 輸出一個數字。
最簡單的方法就是 char c a 32 void main char c a 32 printf c c c getch 擴充套件資料算術運算子 用於各類數值運算。包括加 減 乘 除 求餘 或稱模運算,自增 自減 共七種。關係運算子 用於比較運算。包括大於 小於 等於 大於等於 小於等於 和不等於...
求c語言程式設計,求一個c語言程式設計
原創 剛好我才做了c語言實驗,給你一個任意兩矩陣相乘的 include 矩陣a a n h b b h k c c n k c a b,求c?define n 3 define h 3 define k 3 a i1 j1 表示陣列a n h 中各元素,b i2 j2 表示陣列b h k 中各元素,...
c語言求和,C語言!求一個求和的程式。
3全部先獲取陣列長度,然後用for迴圈,從陣列中獲取值進行累加求和。include include int main int n int val int a int sun 0,i printf 請輸入陣列的長度 scanf d n printf n a int malloc n sizeof in...