Main Content

Variable-Size Data

Acceleration and fixed-point conversion for arrays that change size in the generated code

During acceleration and fixed-point conversion, the code generator identifies arrays, including scalars, vectors, and matrices, as either fixed size or variable size.

  • The code generator designates an array as variable size if it cannot determine the size of the array or if the size of the array changes.

  • The code generator designates an array as fixed size if it can determine that the size of the array does not change.

Understanding how the code generator handles fixed- and variable-size arrays can help you to diagnose and fix errors during code generation. If your application does not require variable-size arrays, you can also fine-tune variable sizing and dynamic memory allocation to potentially improve the performance of the generated code.

Functions

coder.areUnboundedVariableSizedArraysSupportedCheck if current configuration settings allow unbounded variable-size arrays (Since R2024a)
coder.varsizeResolve size incompatibility errors and declare upper bounds

Topics

Troubleshooting

Resolve Error: Arrays Have Incompatible Sizes (MATLAB Coder)

Troubleshoot size incompatibility errors that occur during code generation.

Resolve Error: Fixed Size on the Left Side but Variable Size on the Right (MATLAB Coder)

Troubleshoot errors when assigning variable-size arrays to fixed-size arrays.

Resolve Error: coder.varsize Not Supported for Strings (MATLAB Coder)

Troubleshoot code generation error when using coder.varsize with string variables.

Resolve Error: coder.varsize Not Supported for Class Properties (MATLAB Coder)

Troubleshoot code generation error when using coder.varsize with properties of a MATLAB class.

Resolve Error: Unable to Produce Column Vector from Scalar (MATLAB Coder)

Troubleshoot error when an input argument that is a variable-length column vector at code generation time is a scalar at run time.