nargin | Number of function input arguments |
nargout | Number of function output arguments |
varargin | Variable-length input argument list |
varargout | Variable-length output argument list |
narginchk | Validate number of input arguments |
nargoutchk | Validate number of output arguments |
validateattributes | Check validity of array |
validatestring | Check validity of text |
inputParser | Input parser for functions |
Find Number of Function Arguments
Use nargin
and nargout
to
determine how many input or output arguments your function receives.
Support Variable Number of Inputs
Define a function that accepts a variable number of
input arguments using varargin
. The varargin
argument
is a cell array that contains the function inputs, where each input
is in its own cell.
Support Variable Number of Outputs
Define a function that returns a variable number of
output arguments using varargout
. Output varargout
is
a cell array that contains the function outputs, where each output
is in its own cell.
Validate Number of Function Arguments
Check if your custom function receives a valid number
of input or output arguments. MATLAB® performs some argument checks
automatically. For other cases, you can use narginchk
or nargoutchk
.
Argument Checking in Nested Functions
There are special considerations for using varargin
, varargout
, nargin
,
and nargout
with nested functions.
If your function accepts a predefined set of inputs,
but does not use all the inputs, use the tilde (~
)
operator to ignore them in your function definition.
This example shows how to request specific outputs from a function.
Check Function Inputs with validateattributes
This example shows how to verify that the inputs to
your function conform to a set of requirements using the validateattributes
function.
Define required and optional inputs, assign defaults to optional inputs, and validate all inputs to a custom function using the Input Parser.