deal
Distribute inputs to outputs
Description
Note
In most cases, you do not need the deal function. Instead, use
            array indexing and comma-separated lists when accessing the contents of cell arrays and
            structure fields, as shown in these syntaxes.
[A1,...,An] = C{:}
[B1,...,Bn] = S(:).field
For more information, see Comma-Separated Lists.
However, in a few cases deal can be useful when you need
            multiple outputs from an operation that typically returns a single output. For example,
            you can use deal to:
Assign values to multiple cells of a cell array.
Assign values to a field of a nonscalar structure array.
Return multiple outputs from an anonymous function.
[
        copies the input arguments B1,...,Bn] = deal(A1,...,An)A1,...,An and returns them as the output
        arguments B1,...,Bn. It is the same as B1 = A1, …,
          Bn = An. In this syntax, the numbers of input and output arguments must
        be the same.
[ copies the single input
        argument B1,...,Bn] = deal(A)A and returns it as the output arguments
          B1,...,Bn. It is the same as B1 = A, …, Bn
          = A. In this syntax, you can specify an arbitrary number of output arguments. 
Examples
Input Arguments
Output Arguments
Tips
To convert a cell array to a structure array, or a structure array to a cell array, use the
cell2structandstruct2cellfunctions, notdeal.
Extended Capabilities
Version History
Introduced before R2006a