在MATLAB中,当实现这样的代码时:
c = ['a','b','c','d'];
你无法对元素做任何事情。为了说明我的例子:
>> c
c =
abcd
当您执行c(1,1)
时,它会返回A
。但对于c(2,1)
,它会返回Index exceeds matrix dimensions.
为了解决这个问题,有什么方法可以绕过它吗?或者也许是不同类型的阵列?
答案 0 :(得分:1)
您需要将每个字符串存储在不同的行中,如下所示:
c = ['a';'b';'c';'d'];
您上面所做的是使用[]
,它是字符串连接运算符。它输出的是一个字符串'abcd'
,存储在c(1)
中,这就是c(2)
抛出索引错误的原因。
或者,您可以使用cell arrays:
c{1} = 'a';
c{2} = 'b';