How do I add character to a string in Simulink/Simevents?

1 Ansicht (letzte 30 Tage)
Ho Jung Kim
Ho Jung Kim am 1 Aug. 2022
Kommentiert: Walter Roberson am 4 Aug. 2022
Is there a way to append characters from array in Simulink/Simevents? I have tried to add characters to an empty string using strcat and append in Simulink/Simevents, but I am getting the following error:
Incorrect size for expression '<output of strcat>': expected [1x0] but found [1x1].
Incorrect size for expression '<output of append>': expected [1x0] but found [1x1].
Is there a way to make this work? or is there another way to append characters to an empty string in Simulink/Simevents? The following is the code I am using. Thank you.
memory is an array with 10 0s.

Antworten (1)

Mark McBroom
Mark McBroom am 4 Aug. 2022
Simulink doesn't like the fact that the variable s grows in length. Try something like this:
.....
s = repat(' ',1,10); % create char array of max size
s_counter = 0;
for c=1:length(entity.memory)
if(entity.memory( c ) ~= 0
s_counter = s_counter + 1;
s(s_counter) = entity.memory( c );
end
end
fprintf('%s\n', s);

Kategorien

Mehr zu Discrete-Event Simulation finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by