|Programming and Data Types|
Accessing Data in Structure Arrays
Using structure array indexing, you can access the value of any field or field element in a structure array. Likewise, you can assign a value to any field or field element. For the examples in this section, consider this structure array.
You can access subarrays by appending standard subscripts to a structure array name. For example, the line below results in a 1-by-2 structure array.
The first structure in the
mypatients array is the same as the first structure in the
To access a field of a particular structure, include a period (.) after the structure name followed by the field name.
To access elements within fields, append the appropriate indexing mechanism to the field name. That is, if the field contains an array, use array subscripting; if the field contains a cell array, use cell array subscripting, and so on.
Use the same notations to assign values to structure fields, for example,
You can extract field values for multiple structures at a time. For example, the line below creates a 1-by-3 vector containing all of the
Similarly, you can create a cell array containing the
test data for the first two structures.
Accessing Data Using Dynamic Field Names
All of the structures discussed up to this point have elements that can only be referenced using fixed field names. Another means of accessing structures is to use dynamic field names. These names express the field as a variable expression that MATLAB evaluates at run-time. The dot-parentheses syntax shown here makes
expression a dynamic field name.
Index into this field using the standard MATLAB indexing syntax. For example, to evaluate
expression into a field name and obtain the values of that field at columns
25 of row
Example. The function
avgscore computes an average test score, retrieving information from the
testscores structure using dynamic field names.
You can run this function using different values for the dynamic field,
|Building Structure Arrays||Finding the size of Structure Arrays|