我不确定我是否正确理解了以下代码:
i1=[0:M-1];
c_ind(i1+1)=i1+1;
i1=[0:M-1];
d_ind(i1+1)=i1+1;
我是否正确假设此代码片段生成两个向量c_ind和d_ind都包含数字 1, 2, 3, ..., M ?
非常感谢您的赞赏帮助 - 不确定这一点会导致进展困难;)
最佳
- astriffe
下面这段代码的八度输出。是的,它确实产生了两个向量,c_ind
和d_ind
,都从1
到计数M
。
我不知道为什么要这样写。
>> M = 4
M = 4
>> i1=[0:M-1]
c_ind(i1+1)=i1+1
i1=[0:M-1]
d_ind(i1+1)=i1+1
i1 =
0 1 2 3
>> c_ind =
1 2 3 4
>> i1 =
0 1 2 3
>> d_ind =
1 2 3 4
这实际上有效的原因是因为语法array([indices]) = [values]
将列表映射values
到由indices
.
>> myvec2([1,4,7]) = [10,20,30]
myvec2 =
10 0 0 20 0 0 30
>> myvec(5:7) = [10,20,30]
myvec =
0 0 0 0 10 20 30