Convert int to string without using int2str()
4 views (last 30 days)
Show older comments
Einar Sandberg
on 23 Jul 2015
Commented: Ryan Livingston
on 24 Jul 2015
I'm using Matlab Coder to convert some Matlab code to C++, however I'm having trouble converting int to strings.
int2str() is not supported for code generation, so I must find some other way to convert ints to strings. I've tried googling it, without success. Is this even possible?
1 Comment
Ryan Livingston
on 24 Jul 2015
For the benefit of future readers, see http://stackoverflow.com/q/31581266/3297440 for more discusson
Accepted Answer
Guillaume
on 23 Jul 2015
Of course, it's possible. How do you write a number? You write down each decimal digit one by one. Just do the same: Determine each decimal digit of your integer and convert it to a character. A very crude way of doing it is:
%only work for unsigned integer. it's trivial to test for sign beforehand and work on the absolute value
str = '';
while number > 0
digit = mod(number, 10);
str = [digit + '0', str]; %digit + '0' convert an integer between 0-9 into the corresponding character
number = floor(number / 10);
end
More Answers (0)
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!