热度 21
2012-4-13 16:34
5830 次阅读|
0 个评论
1、varargout与nargout区别 varargout简介: varargout可以看做“Variable length output argument list”的缩写。在matlab中定义m函数时通过varargout我们可以得到可变的数个返回值。在matlab命令窗口中输入doc varargout或help varargout可以获得相关帮助信息。函数申明时的输出参数。 用法:function varargout = foo(n)。 nargout简介: 在matlab中定义一个函数时, 在函数体内部, nargout指出了输出参数的个数。特别是在利用了可变参数列表的函数中, 用nargout获取输出参数个数很方便。 用法: n = nargout n= nargout(fun) 2、varargin与nargin的区别 varargin简介: varargin可以看做“Variable length input argument list”的缩写。在matlab中, varargin提供了一种函数可变参数列表机制。 就是说,使用了“可变参数列表机制”的函数允许调用者调用该函数时根据需要来改变输入参数的个数。 用法:function y = bar(varargin)。 nargin简介: 在matlab中定义一个函数时, 在函数体内部, nargin指出了输入参数的个数。 特便是在利用了可变参数列表的函数中, 用nargin获取输入参数个数很方便。 用法: n = nargin n = nargin(fun) 3、实例 function varargout = foo(varargin) fprintf('How many output arguments? %d\nAnd they are: \n', nargout); for k=1:nargout varargout(k) = varargin(k); % the same as {varargin{k}}; fprintf('%s ', num2str(varargout{k})); end disp(' '); end 在matlab command中运行结果如下: =lianxi(1,2,3) How many output arguments? 2 And they are: 1 2 y1 = 1 y2 = 2 y=lianxi(1,2,3) How many output arguments? 1 And they are: 1 y = 1