MATLAB中的nargin与varargin

varargin

1.定义:

  varargin指代的是一个函数的变输入参数列表。所谓的变输入参数列表:即varargin可以等价于任意不定个数的输入参数。例如,F是一个函数,F(a)可以用F(varargin)表示,F(a,b)依然可以用F(varargin)表示,F(a,b……)均能用F(varargin)来指代。

2.用法

  ①在指明它时用小写的字母varargin表示;

  ②在函数的参数列表中,不论含有一个或多个参数,varargin放在最后面;

  ③当函数执行时,varargin就是一个1*n的cell(元胞)数组(cell数组理解点这里)。

3.实例

例子1:

%函数的定义 
function varlist2(x, y, varargin) fprintf('Total number of inputs = %d\n', nargin); %输出函数参数的总数 nVarargs = length(varargin); %获取varargin参数列表的长度 fprintf('Inputs in varargin( %d ) :\n', nVarargs); for k = 1 : nVarargs fprintf(' %d ', varargin{k} ) %打印输出varargin中的元素值 end



%函数的使用, varlist2( 10, 20, 30, 40, 50) %此处有5个参数 Total number of inputs = 5 Inputs in varargin(3): %由于函数varlist2中有两个已经给出的参数x y,故varargin只指代后面的3个参数 30 40 50 30 40 50

例子2:

%函数定义
function varlist(vargarin) fprintf(' Number of arguments: %d\n',nargin);  %输出函数参数的总数 celldisp(varargin)  %输出元胞数组varargin中的所有元素 %函数调用 varlist( ones(3), 'some text', pi) Number of arguments:3  %函数调用时有3个参数,故nargin为3 varargin{1} =     %以下是varargin{i}的输出打印 1 1 1 1 1 1 1 1 1 varargin{2} = some text varargin{3} = 3.1416

 

  

上一篇:系统编程错误处理


下一篇:Linux下Sqlite3