How to dynamically create a struct?

69 views (last 30 days)
I want to create a struct with the number of fields decided based on some user input. What's a good way of doing this? Or should I be using a cell or matrix instead?
Thanks

Accepted Answer

KSSV
KSSV on 1 Feb 2017
a = struct ;
for i = 1:10
a(i).x = i ;
a(i).y = i+1 ;
end
It depends on how your structure is.
  3 Comments
KSSV
KSSV on 1 Feb 2017
a = struct ;
for i = 1:10
for j = 1:10
a(i).x(j) = rand ;
a(i).y(j) = rand+1 ;
end
end
Walter Roberson
Walter Roberson on 1 Feb 2017
Index a cell array or multidimensional array. x(intersectionnumber, visitnumber)

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 1 Feb 2017
TheStructure = cell2struct( cell(1, length(NamesCell)), NamesCell, 2 )

Categories

Find more on Structures in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!