How to add one digit to another digits?

1 次查看(过去 30 天)
For example, I have a number b=5; and i need to add it by another digits, for example 1234 and get the answer 12345. Code may show like: set(handles.text1,'string',1234+b) An error is "1234+b" and i don't know how format it that one digit adds to another digits. Thanks in advance.

采纳的回答

Paulo Silva
Paulo Silva 2011-3-1
strcat('1234','5')
you can convert any number to string with num2str or other similar function
strcat('1234',num2str(5))
b=5;
strcat('1234',num2str(b))

更多回答(1 个)

Walter Roberson
Walter Roberson 2011-3-1
The answer to your question as phrased is:
set(handles.text1, 'string', 1234*10^max(1,ceil(log10(b+1))) + b)
I would suggest, though, that you instead consider
set(handles.text1, 'string', sprintf('%d%d', 1234, b))
EDIT: put in max() to correct for the possibility that b is 0.
  4 个评论
Eggo Ogge
Eggo Ogge 2011-3-2
Can I ask one more question? If there is not digits, but string, i have something like '=a21:' and by this add hexadecimal number.
g=2F4
sprintf('%s%x',=a21:,g). Can it be something like that?
Walter Roberson
Walter Roberson 2011-3-2
sprintf('%s%s', '=a21:', '2F4');
Or more simply
['=a21:', '2F4']
It is not possible to create a _numeric_ value in hex format.
Perhaps, though, you might like to use
sprintf('%s%x', '=a21:', hex2dec('2F4'))

请先登录,再进行评论。

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by