How do I add character to a string in Simulink/Simevents?
5 次查看(过去 30 天)
显示 更早的评论
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.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1084935/image.png)
memory is an array with 10 0s.
回答(1 个)
Mark McBroom
2022-8-4
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);
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Discrete-Event Simulation 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!