Matlab之字符串拼接的误区:为什么得到的不是新字符串,而是一个字符串数组?

最近做work碰到一个问题。本来是很正常的字符串拼接,以前用[ ]就可以完成,但这次得到的结果却是一个字符串数组“string array”.
而不用[ ]而使用strcat函数的话就不会出现这个问题。

后来仔细观察发现,是因为[ ]里不仅有字符串(String类型),还有字符数组(Char类型)。关于String和Char,我以前有写过一篇博文,详情可以点击这里.

严格上说,字符串拼接的[ ]并不是用于字符串的,而是用于字符数组的拼接的。

举例说明:
先定义

a='a'
b='b';
b=string(b)

得到

a =

    'a'


b = 

    "b"

这里a是char类型,b是string类型。

注意单个引号和两个引号的区别

那么用[ ]把它们连接:

c=[a,b]

得到的是

c = 

  1×2 string array

    "a"    "b"

c为字符串数组。

那么再把b改回char型:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值