В этом примере показано, как определить, сколько аргументов ввода или вывода ваша функция получает использование nargin и nargout.
Создайте функцию в файле с именем addme.m это принимает до двух входных параметров. Идентифицируйте количество входных параметров с nargin.
function c = addme(a,b) switch nargin case 2 c = a + b; case 1 c = a + a; otherwise c = 0; end
Вызовите addme с один, два, или нулевые входные параметры.
addme(42)
ans =
84addme(2,4000)
ans =
4002addme
ans =
0Создайте новую функцию в файле с именем addme2.m это может возвратить один или два выходных параметра (результат и его абсолютное значение). Идентифицируйте количество требуемых выходных параметров с nargout.
function [result,absResult] = addme2(a,b) switch nargin case 2 result = a + b; case 1 result = a + a; otherwise result = 0; end if nargout > 1 absResult = abs(result); end
Вызовите addme2 с одним или двумя выходными аргументами.
value = addme2(11,-22)
value =
-11[value,absValue] = addme2(11,-22)
value =
-11
absValue =
11Функции возвращают выходные параметры в порядке, которым они объявляются в функциональном определении.
nargin | narginchk | nargout | nargoutchk