Accessing elements of Structure

4 views (last 30 days)
Kushagra
Kushagra on 18 Dec 2013
Commented: Kushagra on 19 Dec 2013
I have a structure which contains various arrays. I want to directly access a particular element of an array. My structure is as follows: s =
a: [1 2 3 4 5]
b: [1 2 3 4 5]
.
.
Now I want to access elements of these arrays(a,b...) in loop. So how can I access that. I am able to access complete array using below commands:
fields = fieldnames(s);
for i=1:length(fields)
s.(fields{i});
end
But I am not able to access a particular element directly in one command. How can I do that?

Accepted Answer

Bjorn Gustavsson
Bjorn Gustavsson on 18 Dec 2013
Simpler than you think I guess:
ElementsOfInterest = [2 5 1];
for i=1:length(fields)
s.(fields{i})(ElementsOfInterest(i));
end
Works for me.
HTH
  1 Comment
Kushagra
Kushagra on 19 Dec 2013
I was using an additional dot to access elements of field.... Thanks

Sign in to comment.

More Answers (0)

Categories

Find more on Data Types in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!