[英]How to call command program in MATLAB
在MATLAB中,可以調用用C或C ++編寫的命令程序。 例如,我可以使用以下命令在Windows中調用命令程序:
system('program.exe -i input_file1.txt -o output_file1.txt -m 1 ');
這樣,我可以直接從MATLAB調用命令行程序。 我現在遇到的問題是,使用system
函數時必須固定所有參數。 例如,如果一個參數可以更改,則使用system
功能將失敗。 例如,
for i=1:3
input_file_name = [num2str(i),'.txt'];
system('program.exe -i input_file_name -o output_file1.txt -m 1 ');
end
那我該如何處理呢? 謝謝。
您需要稍微更改語法:
for i=1:3
input_file_name = [num2str(i),'.txt'];
system(['program.exe -i ' input_file_name ' -o output_file1.txt -m 1 ']);
end
input_file_name
是MATLAB中變量的名稱,因此您可以在傳遞給system
命令的字符串中逐字寫入。
通常,您可以使用sprintf
構造要傳遞給system
字符串,例如:
for n=1:3
system(sprintf('program.exe -i %d.txt -o output%d.txt -m 1',n,n));
end
(避免在MATLAB中將i和j用作變量 )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.