An array element is one of the scalar data items that make up an
array. A subscript list (appended to the array or array component)
determines which element is being referred to. A reference to an
array element takes the following form:
array [(s-list)]
array Is the name of an array.
s-list Is a list of one or more subscripts. The
number of subscripts must equal the rank of
the array.
Each subscript must be a scalar numeric
expression with a value that is within the
bounds of its dimension.
Each array element inherits the type, kind type parameter, and
certain attributes (INTENT, PARAMETER, and TARGET) of the parent
array. An array element cannot inherit the POINTER attribute.
If an array element is of type character, it can be followed by a
substring range in parentheses; for example:
ARRAY_D(1,2) (1:3) ! elements are substrings of length 3
However, by convention, such an object is considered to be a
substring rather than an array element.
The following are some valid array element references for an array
declared as REAL B(10,20): B(1,3), B(10,10), and B(5,8).
For information on arrays as structure components, see DATA DERIVED
COMP in online Help.
1 – Order of Elements
The elements of an array form a sequence known as the array element order. The position of an element in this sequence is its subscript order value. The elements of an array are stored as a linear sequence of values. A one-dimensional array is stored with its first element in the first storage location and its last element in the last storage location of the sequence. A multidimensional array is stored so that the leftmost subscripts vary most rapidly. This is called the order of subscript progression. In an array section, the subscript order of the elements is their order within the section itself. For example, if an array is declared as B(20), the section B(4:19:4) consists of elements B(4), B(8), B(12), and B(16). The subscript order value of B(4) in the array section is 1; the subscript order value of B(12) in the section is 3.