Matlab有一个num2str命令:
>> num2str([1 2 30])
ans =
'1 2 30'
Run Code Online (Sandbox Code Playgroud)
还有一个str2double命令:
>> str2double({'1','2','30'})
ans =
1 2 30
Run Code Online (Sandbox Code Playgroud)
是否有命令生成字符数组的单元格数组(在Matlab 2017a之前称为字符串)?
>> desired([1 2 30])
ans =
1×3 cell array
'1' '2' '30'
Run Code Online (Sandbox Code Playgroud)
如果没有命令,一个不使用循环的简短明确的解决方案?
如果你可以使用String数组:
>> string([1 2 30])
ans =
1×3 string array
"1" "2" "30"
Run Code Online (Sandbox Code Playgroud)
要么:
>> cellstr(string([1 2 30]))
ans =
1×3 cell array
{'1'} {'2'} {'30'}
Run Code Online (Sandbox Code Playgroud)
如果没有,总是(未记录的)sprintfc:
>> sprintfc('%d', [1 2 30])
ans =
1×3 cell array
{'1'} {'2'} {'30'}
Run Code Online (Sandbox Code Playgroud)