我只是编写了一个Matlab函数,并希望将我所拥有的内容复制并粘贴到交互式会话中。其中一些是nargin
语句(例如if nargin < 1; a = 0; end;
),结果是nargin
在我的工作区中的值为11005,而我没有分配它。有谁知道这是什么,是否用于任何事情(功能之外)以及将其设置为零是否有任何问题?
答案 0 :(得分:3)
在函数中使用时,nargin
给出传递给该函数的参数数量。与字符串参数fn
一起使用时,它是一个内置函数,它返回函数fn
所采用的参数个数。您应该不在没有工作区参数的情况下调用它:
nargin返回在对当前正在执行的函数的调用中传递的输入参数的数量。 仅在函数体中使用此nargin语法。
你可以,但你应该避免为nargin
分配一个值,因为它会松开第二个语义:
nargin('sparse')
ans =
6
nargin = 0;
nargin('sparse')
Index exceeds matrix dimensions.