What does the varargin function do and what does varargin{:} mean?
137 views (last 30 days)
Show older comments
For example: [varargin{:}] = convertStringsToChars(varargin{:});
3 Comments
Stephen23
on 24 Jun 2020
This is incorrect: no arrays are being concatenated.
When used on the LHS it refers to the elements of the cell array, just like on the RHS. The only difference is that values are being assigned to those elements rather than extracted from them. This is explained in the section "Assigning to a Comma-Separated List" here:
Accepted Answer
Stephen23
on 24 Jun 2020
Edited: Stephen23
on 23 Feb 2022
"What does the varargin function do..."
varargin is not a function, it is a cell array which contains any number of optional input arguments:
"... and what does varargin{:} mean?"
That syntax creates a comma-separated list from the cell array varargin:
So your example is equivalent to this:
[varargin{1},varargin{2},..,varargin{end}] = convertStringsToChars(varargin{1},varargin{2},..,varargin{end});
0 Comments
More Answers (1)
KSSV
on 24 Jun 2020
varargin stands for variable number of arguments. You can input any number of arguments to the function. And these inputs are read by nargin which means the number of inputs.
0 Comments
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!