Arrays
An array is a collection of objects of the same data type,
allocated contiguously in memory. Individual objects in an array,
called elements, are accessed by their position in the array.
The subscripting operator ([]) provides the mechanics
for creating an index to array elements. This form of access is called indexing or subscripting.
An array facilitates the coding of repetitive tasks by allowing the
statements executed on each element to be put into a loop that iterates
through each element in the array.
The C and C++ languages provide limited built-in support for an array type: reading and writing individual elements. Assignment of one array to another, the comparison of two arrays for equality, returning self-knowledge of size are not supported by either language.
The type of an array is derived from the
type of its elements, in what is called array type derivation.
If array objects are of incomplete type, the array type is also considered
incomplete. Array elements may not be of type void or
of function type. However, arrays of pointers to functions are allowed.
Array elements
may not be of reference type or of an abstract class type.
The array declarator contains an identifier followed by an optional subscript declarator. An identifier preceded by an asterisk (*) is an array of pointers.
The subscript declarator describes the number of dimensions in the array and the number of elements in each dimension. Each bracketed expression, or subscript, describes a different dimension and must be a constant expression.
char: char list[4];0. The
array list contains the elements: list[0]
list[1]
list[2]
list[3]int: int roster[3][2];roster are stored in the order:
roster[0][0]
roster[0][1]
roster[1][0]
roster[1][1]
roster[2][0]
roster[2][1]- Array definitions that contain initializations
externdeclarations- Parameter declarations
In array definitions that leave the first set of subscript brackets empty, the initializer determines the number of elements in the first dimension. In a one-dimensional array, the number of initialized elements becomes the total number of elements. In a multidimensional array, the initializer is compared to the subscript declarator to determine the number of elements in the first dimension.
