nargin

Количество входных аргументов функции

Синтаксис

Описание

пример

nargin возвращает количество входных аргументов функции, заданное в вызове, в текущую выполняемую функцию. Используйте этот синтаксис только в теле функции. При использовании arguments блок валидации, значение, возвращаемое nargin внутри функции находится количество позиционных аргументов, предоставляемых при вызове функции. Для получения дополнительной информации см. nargin» в разделе «Валидация аргументов».

пример

nargin(fun) возвращает количество входных параметров, отображаемых в fun определение функции. Если функция включает в себя varargin в его определении, затем nargin возвращает отрицательное число входов. Для примера, если функция myFun объявляет входы a, b, и varargin, затем nargin('myFun') возвращает -3.

Если входной параметр ссылается на функцию, которая использует arguments блок валидации, затем возвращаемое значение является количеством объявленных позиционных аргументов в определении функции как неотрицательное значение.

Примеры

свернуть все

В файле с именем addme.m, создайте функцию, которая принимает до двух входов. Использование nargin в теле функции для определения количества входов.

type addme.m
function c = addme(a,b)
    switch nargin
        case 2
            c = a + b;
        case 1
            c = a + a;
        otherwise
            c = 0;
    end
end

В командной строке вызовите addme функция с двумя входами.

c = addme(13,42)
c = 55

Вызовите функцию с одним входом.

c = addme(13)
c = 26

Определите, сколько входов принимает функция.

Функция addme созданный в предыдущем примере, имеет два входов в операторе объявления (a и b). Определите имя функции как вектор символов и используйте ее как вход для nargin.

fun = 'addme';
nargin(fun)
ans = 2

Определите, сколько входов функция использует varargin может принять.

В файле с именем mynewplot.m, создайте функцию, которая принимает числовые входы x и y и любое количество дополнительных входов графика с использованием varargin.

type mynewplot.m
function mynewplot(x,y,varargin)
    figure
    plot(x,y,varargin{:})
    title('My New Plot')
end

Запросите, сколько входов newplot может принять.

fx = 'mynewplot';
nargin(fx)
ans = -3

Знак минус указывает, что третий вход varargin. The mynewplot функция может принять неопределенное количество дополнительных входных параметров.

Входные параметры

свернуть все

Функция, для которой nargin возвращает количество входных параметров из его определения, заданное как указатель на функцию, вектор символов или строковый скаляр.

Пример: @cos

Пример: 'plot'

Типы данных: char | function_handle

Расширенные возможности

.
Представлено до R2006a