MATLAB函数需要多少个参数?

San*_*har 1 matlab function

有没有办法找出一个函数将采用多少个参数?

像这样?

f = @(x,y,z) x+y+z;
numargs( f )

ans = 
      3
Run Code Online (Sandbox Code Playgroud)

我知道很多功能都可以varargin,所以也许会返回inf或者其他东西.

Ben*_*_11 8

您可以使用nargin来获取输入参数的数量.

至于函数varargin作为输入参数时,输出nargin将为负.

来自文档的示例:

function mynewplot(x,y,varargin)
   figure
   plot(x,y,varargin{:})
   title('My New Plot')
Run Code Online (Sandbox Code Playgroud)

这样打电话nargin:

fx = 'mynewplot';
nargin(fx)
Run Code Online (Sandbox Code Playgroud)

得到-3的结果,因此第三个输入参数是varargin.

  • 凉!不知道那个负面的位! (2认同)