struct array

18 次查看(过去 30 天)
Richard
Richard 2012-1-8
I'm attempting to do the following inside a loop:
Name={'Note1','Note2','Note3','Note4'};
Data=struct('Note1',Temp{1,1},'Note2',Temp{1,2},'Note3',...
Temp{1,3},'Note4',Temp{1,4});
Is it possible to do this inside a loop, therefore avoiding to writing each individual field name: Something like the following, although this provides an error: for i=1:4; Data(i)=struct(Name{i},Temp{1,i}); end
I'm thinking that the problem lies with Data(i).

采纳的回答

Andrei Bobrov
Andrei Bobrov 2012-1-8
d = [Name;Temp];
Data = struct(d{:})

更多回答(1 个)

David Young
David Young 2012-1-8
for i=1:4
Data.(Name{i}) = Temp{1,i};
end

类别

Help CenterFile Exchange 中查找有关 Structures 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by