主要内容

num2str

将数字转换为字符数组

描述

例子

年代= num2str (一个将数值数组转换为表示数字的字符数组。输出格式取决于原始值的大小。num2str用于用数值标记和标题图形。

例子

年代= num2str (一个精度返回一个字符数组,该字符数组表示具有指定的最大有效位数的数字精度

例子

年代= num2str (一个formatSpec方法指定的格式formatSpec所有的元素一个

例子

全部折叠

转换返回的浮点值π每股收益特征向量。

s = num2str(π)
s = ' 3.1416 '
s = num2str (eps)
s = ' 2.2204 e-16 '

指定浮点值的最大有效位数。

rng (“默认”) A = randn([2,2]);s = num2str (3)
s =2 x15 char数组'0.538 -2.26' ' 1.83 0.862'

显示π作为指定精度的浮点数。

formatSpec =“% .2f”;s = num2str(π,formatSpec)
s = ' 3.14 '

输入参数

全部折叠

输入数组,指定为数值数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑
复数的支持:是的

输出字符串中最大有效位数,指定为正整数。

请注意

如果您指定精度若要超过输入浮点数据类型的精度,结果可能与指定精度的输入值不匹配。结果取决于您的计算机硬件和操作系统。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

输出字段的格式,使用格式化操作符指定。formatSpec还可以包括普通文本和特殊字符。

如果formatSpec包括表示转义字符的文本,例如\ n,然后num2str翻译转义字符。

formatSpec可以是单引号中的字符向量,也可以是字符串标量。

格式化操作符

格式化操作符以百分号开头,% gydF4y2Ba,以转换字符结束。转换字符是必需的。还可以指定之间的标识符、标志、字段宽度、精度和子类型操作符% gydF4y2Ba还有转换字符。(操作符之间的空格是无效的,这里显示只是为了可读性)。

格式化运算符字符的原理图。

转换字符

此表显示将数字和字符数据格式化为文本的转换字符。

值类型 转换 细节

整数,签署了

% d%我

以10为底的

整数,无符号

% u

以10为底的

%啊

基数8(八进制)

% x

以16为基数(十六进制),小写字母一个- - - - - -f

% X

一样% x,大写字母一个- - - - - -F

浮点数

% f

定点记数法(使用精确运算符指定小数点后的位数)。

% e

指数符号,比如3.141593 e + 00(使用精确运算符指定小数点后的位数。)

% E

一样% e,但大写,如3.141593 e + 00(使用精确运算符指定小数点后的位数。)

% g

越紧凑的% e% f,不带尾随零(使用精确运算符指定有效位数。)

% G

越紧凑的% E% f,不带尾随零(使用精确运算符指定有效位数。)

字符或字符串

% c

单个字符

% s

字符向量或字符串数组。的类型与的类型相同formatSpec

可选的运营商

可选的标识符、标志、字段宽度、精度和子类型操作符进一步定义了输出文本的格式。

  • 标识符

    注意:不像sprintf函数,num2str不支持标识符。

  • 旗帜

    “- - -”

    对齐。
    例子:% -5.2度
    例子:% -10年代

    “+”

    总是为任何数值打印符号字符(+或-)。
    例子:% + 5.2 f
    文本对齐。
    例子:% + 10 s

    ' '

    在值之前插入空格。
    例子:% 5.2度

    ' 0 '

    Pad到字段宽度,值前加0。
    例子:% 05.2度

    “#”

    修改选定的数值转换:

    • %啊% x,或% X、打印00 x,或0 x前缀。

    • % f% e,或% E,即使精度为0,也可打印小数点。

    • % g% G,不要去掉后面的0或小数点。

    例子:% # 5.0度

  • 字段宽度

    要打印的最小字符数。

    例子:' % 5 d '打印intmax作为2147483647因为返回的值intmax超过要打印的最小字符数。

    如果要打印的字符数小于字段宽度,则组成函数将填充到字段宽度,并在值前面加上空格,除非由标志另行指定。

    然而,num2str函数没有填充到带有空格的字段宽度。

  • 精度

    要打印的数字数。

    % f% e,或% E

    小数点右边的位数
    例子:“% .4f”打印π作为“3.1416”

    % g% G

    有效位数
    例子:“% .4g”打印π作为“3.142”

    例子:' % 6.4 f '打印π作为“3.1416”

    请注意

    如果为超过输入数值数据类型精度的浮点值指定精度运算符,则结果可能与输入值的精度不匹配。结果取决于您的计算机硬件和操作系统。

  • 子类型

    可以使用子类型操作符将浮点值打印为其八进制、十进制或十六进制值。子类型操作符紧接在转换字符的前面。这个表显示了可以使用子类型的转换。

    输入值类型

    子类型和转换字符

    输出值类型

    浮点数

    % bx% bX
    %博
    % bu

    双精度十六进制、八进制或十进制值
    例子:% bx打印π作为400921 fb54442d18

    % tx% tX
    %,
    %你

    单精度十六进制、八进制或十进制值
    例子:% tx打印π作为40490身上

格式化操作符之前或之后的文本

formatSpec也可以在百分号之前包含额外的文本,% gydF4y2Ba,或在转换字符后。文本可以是:

  • 普通文字打印。

  • 不能作为普通文本输入的特殊字符。中特殊字符的表示方法formatSpec

    特殊字符

    表示

    单引号

    百分比的性格

    % %

    反斜杠

    \ \

    报警

    、一个

    退格

    \ b

    换页

    \ f

    新行

    \ n

    回车

    r \

    水平选项卡

    \ t

    垂直制表符

    v \

    字符的Unicode®数值可以用十六进制数表示,N

    \ xN

    例子:num2str(“\ x5A”)返回“Z”

    Unicode数值可由八进制数表示的字符,N

    \ N

    例子:num2str(' \ 132 ')返回“Z”

格式化操作符转换的显著行为

  • 数值转换只打印复数的实分量。

  • 如果您指定的转换不适合数据,例如数值的文本转换,请使用MATLAB®重写指定的转换,并使用% e

    例子:' % s '转换π3.141593 e + 00

  • 如果应用文本转换(或% c% s)转换为整数值,MATLAB将对应于有效字符代码的值转换为字符。

    例子:' % s '转换(65 66 67)美国广播公司

输出参数

全部折叠

输入数组的文本表示形式,作为字符数组返回。

提示

  • num2str中的位置标识符不接受formatSpec输入参数。例如,num2str (15 [14], ' % 2 $ X % 1 $ o)返回一个错误。

    位置标识符指定格式化操作符处理函数输入参数的顺序,而不是输入数组元素的顺序。当你打电话num2str,只有一个输入参数有要转换的数字。

  • 如果指定的格式化操作符或特殊字符无效,则num2str打印到无效操作符或字符的所有文本,并丢弃其余文本。

    例子:如果formatSpec“价值= % z ',然后num2str打印“价值= '因为% z不是格式化操作符。

    例子:如果formatSpec'字符\x99999 = %s',然后num2str打印“性格”因为\ x99999不是有效的特殊字符。

算法

num2str裁剪字符数组中的任何前导空格,即使formatSpec包括一个空格字符标志。例如,num2str (42.67, % 10.2 f)返回一个1 × 5的字符数组“42.67”

扩展功能

版本历史

之前介绍过的R2006a

Baidu
map