Linear Arrays:

An array is a set of homogenous elements (of the same type) referenced under one name along with the subscript.  The subscript is the index or the position that contains the element.  In ‘C’, the subscript value begins with zero.  Arrays may be one-dimensional, two-dimensional or multi-dimensional.  Generally one-dimensional and two-dimensional arrays are used to represent real world entities for solving problems pertaining to a given domain.  A one dimensional array is declared in “C” as follows:

int arr[10];

The above declaration declares an integer array of 10 integers referred to by the name arr.  Similarly two dimensional arrays may be declared:

int arr[5][6];

The above declaration declares a two dimensional array, arr of 5 rows and 6 columns.  Total integers that may be stored in the above array are 5 x 6 = 30.  An array may be represented as an Abstract Data Type.

The address of the first element of the array is called its base address.  Arrays are by default passed to functions by reference using this base address.  Once the base address is available, remaining elements of the array may be accessed by manipulating the subscript identifier.  In ‘C’, arr[i] is equivalent to writing *(arr+i), which refers to the ith element of the array.  Two dimensional arrays may be represented using row-major form, in which all the elements of the same rows are scanned first or in column-major form in which all the elements of the same column are scanned first beginning from the first column.  We can perform various operations on arrays which will be explained in separate posts with relevant ‘C’ program.