Why does NUM2STR not return the correct string format that I specified?

When I use NUM2STR in the following example, the result is a character array of length 6 instead of 10:
d = num2str(123.456, '%10.2f');
whos d
Name Size Bytes Class
d 1x6 12 char array
Grand total is 6 elements using 12 bytes

 采纳的回答

This is the expected behavior of NUM2STR. NUM2STR removes leading spaces from variables.
As a workaround, you can utilize the SPRINTF command, as shown in the following example:
d = sprintf('%10.2f', 123.456);
The result of the variable d will now be a character array whose length is 10 elements.

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Characters and Strings 的更多信息

产品

标签

Community Treasure Hunt

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

Start Hunting!

Translated by