将索引值分配给结构字段



我希望我的索引结构中的一个字段采用不同向量中类似索引的值:

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'});

相关内容

  • 没有找到相关文章

最新更新