В этом примере показано, как определить, сколько входных или выходных аргументов получает ваша функция с помощью 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 = 84
addme(2,4000)
ans = 4002
addme
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