Iterating through struct fieldnames in MATLAB.
- by Noio
My question is easily summarized as: "Why does the following not work?"
teststruct = struct('a',3,'b',5,'c',9)
fields = fieldnames(teststruct)
for i=1:numel(fns)
fns(i)
teststruct.(fns(i))
end
output:
ans = 'a'
??? Argument to dynamic structure reference must evaluate to a valid field name.
Especially since teststruct.('a') does work. And fns(i) prints out ans = 'a'.
I can't get my head around it.