當前位置:編程學習大全網 - 編程軟體 - Matlab,如何實現輸入參數及輸出參數的個數可變

Matlab,如何實現輸入參數及輸出參數的個數可變

使用變量varargin和變量varargout。varargin和varargout必須使用小寫形式。例如,

function?[m,n]?=?testhv3(varargin)

將輸入的變量數讀取到函數testhv3中,而

function?[varargout]?=?testhv4(m,?n,?p)

則通過函數testhv4返回輸出的變量數。若函數testhv有壹個固定的輸入變量x,後跟輸入變量的可變數目,則調用

function?[m,?n]?=?testhv3(x,?varargin)

函數時,會導致varargin由用戶提供的第二個輸入變量開始運行(第二個輸入變量為varargin這個單元數組第壹個元素)。varargout的情形與此類似。壹個函數的輸入變量和輸出變量的個數是可變的。

當varargin用做壹個函數的輸入變量時,MATLAB會將其置入壹個單元數組中,該數組接受由用戶輸入的變量數。varargout類似,函數返回的是壹個單元數組。

例:

function?varargout?=?Test(a,?b,?varargin)

if?(nargin?==?2)

fprintf('***有%d個輸入參數.\n',nargin);

varargout{1}?=?a;

varargout{2}?=?b;

elseif?(nargin?==?3)

fprintf('***有%d個輸入參數.\n',nargin);

varargout{1}?=?a;?

varargout{2}?=?b;?

varargout{3}?=?varargin{1};

end

end

當妳在matlab命令行鍵入

[x,y,z]?=?Test(1,?2,?3)

返回

***有3個輸入參數.

x?=?1

y?=?2

z?=?3

參考文獻

[1]Rafael C.Gonzalez,Richard E.Woods,Steven L.Eddins.數字圖像處理(MATLAB版)[M].電子工業出版社:北京,2005.9:51.

[2]森林裏的樹葉子.Matlab,如何實現輸入參數及輸出參數的個數可變?[EB/OL]./s/blog_e68017690102v68u.html,2014-11-08.

  • 上一篇:誰有親子棋室國際象棋入門篇滿春喜主講百度雲資源鏈接請發我壹下地址謝謝
  • 下一篇:凱迪拉克電子轉向器如何搭配
  • copyright 2024編程學習大全網