在一些较为复杂的MATLAB编程当中,我们需要用到nargin函数,很多地方都不能说清楚为什么需要用这个函数,也就
并不能说明其存在的必要性,下面我们通过一个实例让大家明白这一点。
操作方法
-
01
首先是我们编写一个函数,有多个输入变量,多个输出变量,函数如下: function [a,b,c]=example(x1,x2,x3,x4) a=0; b=0; if(nargin==1) c=x1; elseif (nargin==2) c=3; elseif(nargin>2) c=5; end
-
02
然后我们首先运行如下命令: [a,b,c]=example(1,2,4),回车,可以看到如下结果: a = 0 b =0 c =5,这里关键是c=5,我们可以看到我们函数定义的过程当中判断了输入变量的个数,在输入变量为3时,c的结果是5.
-
03
然后我们再尝试其他命令 [a,b,c]=example(1) 我们可以看到结果a = 0 b =0 c =1,这就可以判断在输入变量为1个时,我们要输出的结果就调整成了c=1.
-
04
分析 在一些大型的函数中,函数过程是反复调用,所以我们很难去很精准地去判断这一步的函数在调用上一步的结果时有几个输入变量,假如上一步计算步骤出现了奇异情况,不能出现有效的结果,那么在这一步,就会少了一个输入变量,如果我们的程序要适应性强,那么我们就可以通过这种方式能够规避这种情况,增加程序的适应性。如果不能不能规避这种情况,我们还以上一个例子为例;输入 [a,b,c]=example()回车,会看到如下错误,因为函数过程我们用到了x1,所以如果我们不能输入x1参数,就会出错,那样我们的函数就不能运行下去了,这就可以看到了nargIn存在的必要性。