matlab中nargin和varargin的用法

MATLAB中的nargin与varargin的用法

nargin的用法:

nargin:number of function input arguments,指的是一个函数的输入变量的个数。

用法:nargin或着nargin(fx), 其中fx指的是一个函数名或着函数句柄。

当一个函数的参数中含有varargin变量时,这时候返回值为负。

下面举例说明:

用于nargin:

复制代码
function c = addme(a, b)
switch nargin
case 2
 c= a + b;
case 1
 c = a + a ;
otherwise
  c = 0;
end
复制代码

返回的结果为 a + b。

用到nargin(fx):

fx = 'addme';
nargin(fx)
ans = 
    2

当含有 varargin参数时,

function mynewplot(x, y, varargin)
 
fx = 'mynewplot';
nargin(fx)
ans = 
-3

varargin的用法:

varargin:Variable-length input arguments list. 即指的是变输入参数列表;

varargin 就是一个输入 变量,它可以是任意个不定个数的输入参数。要求:第一,指明它用小写的字母表示;第二,在函数的参数列表中,varargin放在最后面。    当函数执行时,varargin就是一个1*n的cell数组。下面我们举例说明:

第一个例子:

复制代码
function varlist( vargarin)
fprintf(' Number of arguments: %d\n',nargin);
celldisp(varargin)

varlist( ones(3), 'some text', pi)
Number of arguments:3
varargin{1} = 
    1    1    1
    1    1    1
    1    1    1
varargin{2} = 
some text
varargin{3} = 
3.1416
复制代码

第二个例子:

复制代码
function varlist2(x, y, varargin)
fprintf('Total number of inputs = %d\n', nargin);
nVarargs = length(varargin);
fprintf('Inputs in varargin( %d ) :\n', nVarargs);
for k = 1 : nVarargs
fprintf('    %d ', varargin{k} )
end



varlist2( 10, 20, 30, 40, 50)
Total number of inputs = 5
Inputs in varargin(3):
30
40
50

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值