文档

convertStringsToChars

将字符串数组转换为字符数组,保持其他数组不变

在处理自己的代码时,可以使用convertStringsToChars使代码接受字符串输入。然后,您不必对您编写的用于字符数组的代码进行任何其他更改。

语法

B = convertStringsToChars(A)
(B1,…,Bn] = convertStringsToChars(A1,...,An)

描述

例子

B= convertStringsToChars (一个转换一个到字符向量或字符向量的单元格数组一个是一个字符串数组。否则,convertStringsToChars返回一个没有改变。

例子

(B1,…,Bn] = convertStringsToChars(A1,...,An)中转换任何字符串数组A1,…,一个到字符向量或单元格数组的字符向量,然后将它们作为相应的输出参数返回B1,…,Bn.如果有任何论点A1,…,一个还有其他数据类型吗convertStringsToChars原封不动地返回。

例子

全部折叠

创建一个字符串标量并将其转换为字符向量。

str =“水星”
str = "水星"
chr = convertStringsToChars(str)
chr =“水星”

将字符串数组转换为字符向量的单元格数组。

STR = [“金星”“地球”“火星”
str =1x3字符串数组“金星”“地球”“火星”
C = convertStringsToChars(str)
C =1x3单元阵列{“金星”}{“地球”}{“火星”}

处理任意数量的不同类型的输入数组,只将字符串数组转换为字符数组。

创建一组数字、字符和字符串数组。

A = [1 2 3]
一个=1×31 2 3
STR = [“水星”“双子座”“阿波罗”
str =1x3字符串数组"水星" "双子" "阿波罗"
B = [2 5;7 6]
B =2×22 5 7 6
C = {“伏”安培的
C =1x2单元阵列{“伏特”}{安培的}

转换字符串数组并返回未更改的其他数组。

[newA,newStr,newB,newC] = convertStringsToChars(A,str,B,C)
newA =1×31 2 3
newStr =1x3单元阵列{“水星”}{“双子座”}{“阿波罗”}
新手=2×22 5 7 6
newC =1x2单元阵列{“伏特”}{安培的}

输入参数

全部折叠

输入数组,指定为任意大小或数据类型的数组。

输出参数

全部折叠

输出数组。输出数组的数据类型取决于输入数组的数据类型,一个

  • 如果一个那么字符串是标量吗B是一个字符向量。

  • 如果一个字符串数组是否有其他大小B是具有相同大小的字符向量的单元格数组。

  • 如果一个还有其他数据类型吗B等于一个

如果一个是字符串数组吗convertStringsToChars转换为以下任何元素:

  • 一个空字符串(显示为"")到0——- - - - - -0字符数组(显示为''

  • 丢失的字符串(显示为< >失踪)到0——- - - - - -0字符数组

如果一个是一个空字符串数组,那么B是空单元格数组。空数组至少有一个维度的大小为0

提示

  • 若要使现有代码接受字符串数组作为输入,请将调用添加到convertStringsToChars在代码的开头。

    例如,如果您定义了一个函数myFunc接收三个输入参数,使用处理所有三个输入convertStringsToChars.保持代码的其余部分不变。

    函数y = myFunc(a,b,c) [a,b,c] = convertStringsToChars(a,b,c);<原代码第一行> <原代码第2行>…

    在本例中,输出参数(a, b, c)在适当的位置覆盖输入参数。如果任何输入参数不是字符串数组,那么它是不变的。

    如果myFunc接收数量可变的输入参数,然后处理指定的所有参数变长度输入宗量

    function y = myFunc(varargin) [varargin{:}] = convertStringsToChars(varargin{:});...
  • convertStringsToChars函数在转换一个输入参数时效率更高。如果性能是一个问题,那么调用convertStringsToChars每次只调用一个输入参数,而不是对多个输入调用一次。

扩展功能

C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。

在R2017b中引入

这个话题有用吗?