Output of sprintf - string?

3 次查看(过去 30 天)
Hi everyone,
on Matlab's documentation I read that sprintf is a function which takes as input data and returns a string. If I write:
x=sprintf('%d',2222)
the output has 1x4 dimension, thus is a character array and not a string (i use Matlab 2015). Why?
Thank you.

采纳的回答

Stephen23
Stephen23 2017-5-11
编辑:Stephen23 2018-1-16
Because MATLAB only introduced the string class in R2016b, but previously any character array with size 1xN was called a "string". So for historic reasons there are many references to "strings" that are actually references to 1xN char arrays.
For example this includes the functions sprintf, cellstr, and iscellstr.
For the function sprintf:
  • Versions R2016a and before: The output is a 1xN char array.
  • Versions R2016b and later: The output class is the same as that of the first input.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Data Type Conversion 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by