Fixed variable range in code translation

조회 수: 4(최근 30일)
VaL V6
VaL V6 2020년 4월 22일
답변: David Fink 2020년 5월 4일
I'm trying to translate in C the following code:
function [merging_flag,frameRGB_3] = merging_function(check,frame,frame_2,frameRGB_2)
%% Initialization
merging_flag = true;
row = check.frame_shift; % type uint16
colum_DL = check.DL_dimension.width; % type uint16
colum_IR = check.IR_dimension.width; % type uint16
Filler_M_DL = zeros([row colum_DL],'uint8');
Filler_M_IR = zeros([row colum_IR],'uint8');
The error occurs when the coder tries to translate Filler_m_DL e Filler_M_DL:
"Computed maximum size exceeds maximum allowed number of elements (134217728). The computed size is [:65535 x :65535]. Please consider enabling dynamic memory allocation to allow unbounded sizes".
Therefore the coder considers the variables row, colum_DL e column_IR (that are scalars) as the can space between 0 and 65535 (maximum representable value with uint16 type) but I know that those values will space between 0 ans 1000.
Is there a way to define this range for the variables and avoid to allow the dynamic memory allocation?

채택된 답변

David Fink
David Fink 2020년 5월 4일

추가 답변(0개)


Find more on MATLAB Coder 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!

Translated by