我希望我的索引结构中的一个字段采用不同向量中类似索引的值:
struc(1:3).value=1:3
然而,这给出了错误"Expected one output from a curly brace or dot indexing expression, but there were 2 results."
将分配行的左侧或右侧用方括号括起来没有帮助。我认为deal
不合适,因为它只是分布相同的值,而不是在向量上分配一对一的值。
除了使用for循环之外,我如何实现这个变量赋值?使用Matlab 2016a。
如果您已经创建了struc
,只需执行:
c = num2cell(1:3);
[struc(1:3).value] = c{:};
或者在一行中创建所需的结构:
struc = cell2struct(num2cell(1:3), {'value'});