Is there a way to allocate an array of structs from a .MAT to C?

2 次查看(过去 30 天)
Hello!
I need to write the C code for a function I have in Matlab and I thought about using the Matlab Coder. The function basically performs a numeric integration, but there are huge arrays of struct as inputs. I'll be using only C so I need to declare and define these arrays of structs in C.
Does Matlab have a tool to do that?
Thank you!

采纳的回答

atharva
atharva 2023-12-7
Hey Marcelo,
I understand that you want to know that if there is a way to allocate an array of structs from a .MAT to C
However, you will need to manually declare and define the arrays of structs in C. MATLAB Coder provides a way to specify the data types of the inputs and outputs of the generated C code, but it does not generate C code for the data itself. You will need to write the C code to create and populate the arrays of structs based on the input data from your application.
MATLAB Coder has some limitations when generating C code from MATLAB code. Some of these limitations include:
  • Not all MATLAB functions can be converted to C code. For example, functions that use dynamic memory allocation or recursion cannot be converted.
  • Some MATLAB language features are not supported in C code, such as variable-length argument lists and nested functions.
  • The generated C code may not be as efficient as hand-written C code, especially for complex algorithms.
I hope this helps!

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB Coder 的更多信息

产品


版本

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by