簡體   English   中英

如何在MATLAB中調用命令程序

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM