Matlab 函数输入不确定多个参数的使用
2016-04-20 本文已影响6159人
沉睡的牛仔
nargin: number of function arguments,即函数输入参数个数。
只要你的函数重载逻辑没有出错,那么就可以通过查看nargin的数值来实现你说的设置缺省值等功能。
看下nargin的帮助就知道了。
使用方法
nargin是用来判断输入变量个数的函数,这样就可以针对不同的情况执行不同的功能。通常可以用它来设定一些默认值。如下例所示:
函数文件 examp.m
function fout=examp(a,b,c)
if nargin==1
fout=a;
elseif nargin==2
fout=a+b;
elseif nargin==3
fout=(a*b*c)/2;
end
另外一例:
function [x0, y0] = myplot(x, y, npts, angle, subdiv)
% MYPLOT Plot a function.
% MYPLOT(x, y, npts, angle, subdiv)
% The first two input arguments are
% required; the other three have default values ...if nargin
< 5, subdiv = 20; endif nargin
< 4, angle = 10; endif nargin
< 3, npts = 25; end ...if nargout == 0 plot(x, y)else x0 = x; y0 = y;end
注:%x,y是两个变量,npt,angle,subdiv这三个参数具有默认值,不需要输入。if nargin < 5, subdiv = 20; end如果输入变量的个数小于5个,那么给subdiv赋默认值。
if nargin < 4, angle = 10; end如果输入变量的个数小于4个,那么给angle赋默认值。
......详细用法 在matlab窗口中输入 help nargin