Variable-Size Data - MATLAB & Simulink (original) (raw)
Main Content
Definition, differences for code generation, dynamic memory allocation
Variable-size data is data whose size is not known at compile time or changes at run time. To use variable-size data in your MATLAB® code for which you intend to generate C/C++ code, follow the described guidelines. Certain restrictions apply to the use of variable-size data in MATLAB code that is intended for code generation. These techniques can help you to control dynamic memory allocation and improve performance of the generated code.
Functions
coder.areUnboundedVariableSizedArraysSupported | Check if current configuration settings allow unbounded variable-size arrays (Since R2024a) |
---|---|
coder.varsize | Resolve size mismatch errors and declare upper bounds |
Topics
- Code Generation for Variable-Size Arrays
Variable-size data is data whose size is not known at compile time or whose size can change at run time. - Define Variable-Size Data for Code Generation
Choose a method for defining variable-size data. - Control Memory Allocation for Variable-Size Arrays
Control when dynamic memory allocation is used. - Control Dynamic Memory Allocation for Fixed-Size Arrays
Control when to dynamically allocate memory for fixed-size arrays. - Generate Code for Variable-Size Data
Generate code for data whose size might change at run time. - Specify Upper Bounds for Variable-Size Arrays
To avoid dynamic memory allocation, specify upper bounds for a variable-size array. - Use C Arrays in the Generated Function Interfaces
Understand and use arrays from the generated function interfaces - Incompatibilities with MATLAB in Variable-Size Support for Code Generation
Sometimes, the results for variable-size data in generated code are different than the results in MATLAB. - Variable-Sizing Restrictions for Code Generation of Toolbox Functions
Some restrictions for variable-size data apply to multiple toolbox functions.
Troubleshooting
Diagnose and Fix Variable-Size Data Errors
Troubleshoot size mismatch and upper bounds detection errors.
Resolve Issue: coder.varsize Not Supported for Strings
Troubleshoot code generation error when using coder.varisze
with string variables.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
Belgium (English)
Denmark (English)
Deutschland (Deutsch)
España (Español)
Finland (English)
France (Français)
Ireland (English)
Italia (Italiano)
Luxembourg (English)
Netherlands (English)
Norway (English)
Österreich (Deutsch)
Portugal (English)
Sweden (English)
Switzerland
United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)