How can I get the values from my structure?
1 次查看(过去 30 天)
显示 更早的评论
Hey, maybe my question is pretty easy to solve. I have a struct array, build by a "solve" function. I need to get those values, but I don't know how many values the struct could get, because it depends in the input of the user. As you can see, this make it well but only for 2 values, if I get a structure for 3 values even if I change the value of "i" it doesn't work. Thanks in advance for all your help.
pc=solve (y, [x]);
pucr= fieldnames (pc);
for i= 1:2
vals(i, 1)= getfield(pc,pucr{i});
end
0 个评论
采纳的回答
Ameer Hamza
2020-5-1
Use numel() to fine the number of elements in pucr.
pc=solve (y, [x]);
pucr= fieldnames (pc);
for i= 1:numel(pucr)
vals(i, 1)= getfield(pc,pucr{i});
end
Now the for loop will run as many times as the number of fields in pucr.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!