有没有办法找出函数需要多少个参数?
像这样?f = @(x,y,z) x+y+z;
numargs( f )
ans =
3
我知道很多函数需要varargin
,所以也许会返回inf
或其他东西。
答案 0 :(得分:8)
您可以使用nargin来获取输入参数的数量。
当函数将varargin
作为输入参数时,nargin
的输出将为负。
文档示例:
function mynewplot(x,y,varargin)
figure
plot(x,y,varargin{:})
title('My New Plot')
如此调用nargin
:
fx = 'mynewplot';
nargin(fx)
产生-3的结果,因此第三个输入参数为varargin
。