例如在Matlab中,命令行我使用:如何將兩個矩陣作爲參數傳遞給matlab可執行文件?
functionname([1 2 3;4 5 6],[1 3 2;7 9 8])
我得到一個結果。但是,在Windows使用cmd
:
functionname "[1 2 3;4 5 6]" "[1 3 2;7 9 8])
這似乎並不奏效。
例如在Matlab中,命令行我使用:如何將兩個矩陣作爲參數傳遞給matlab可執行文件?
functionname([1 2 3;4 5 6],[1 3 2;7 9 8])
我得到一個結果。但是,在Windows使用cmd
:
functionname "[1 2 3;4 5 6]" "[1 3 2;7 9 8])
這似乎並不奏效。
此問題已經在How to create a executable .exe file from .m file上回答。
您應該使用mcc -m yourfile
,它只適用於安裝了Matlab的機器。 另一種方法是使用.dll
並通過Visual Studio運行它。
我已經創建了exe文件,問題是我無法找到如何將兩個矩陣作爲參數傳遞。例如,對於兩個數字值,我可以使用 函數名稱4 5 ,但函數名稱「[1 2 3; 4 5 6]」「[1 3 2; 7 9 8])不起作用 – user3117667
你得的參數轉換爲數值的需求:
在使用functionName(A,B),加
if ischar(a)
a = eval(a);
end
if ischar(b)
b = eval(b);
end
現在使用functionName()可以用數值參數和命令行調用與字符串參數:
functionname "[1 2 3;4 5 6]" "[1 3 2;7 9 8]"
請注意,eval()與mat2str()相反。
你期待什麼結果?這個函數是否向控制檯輸出了一些東西,或者你希望返回值是神奇的打印? – paddy
該函數以兩個矩陣作爲參數,進行相同的計算並返回結果。我直接在matlab命令行上測試它,它工作。但創建可執行文件後,我無法找到如何將兩個矩陣作爲參數傳遞。 – user3117667