Difference between Structure and Array in C
Last Updated :
22 Dec, 2022
An array is collection of items stored at contiguous memory locations.
A structure is a user defined data type in C/C++. A structure creates a data type that can be used to group items of possibly different types into a single type.
Difference between Structure and Array
ARRAY |
STRUCTURE |
Array refers to a collection consisting of elements of homogeneous data type. |
Structure refers to a collection consisting of elements of heterogeneous data type. |
Array uses subscripts or “[ ]” (square bracket) for element access |
Structure uses “.” (Dot operator) for element access |
Array is pointer as it points to the first element of the collection. |
Structure is not a pointer |
Instantiation of Array objects is not possible. |
Instantiation of Structure objects is possible. |
Array size is fixed and is basically the number of elements multiplied by the size of an element. |
Structure size is not fixed as each element of Structure can be of different type and size. |
Bit field is not possible in an Array. |
Bit field is possible in an Structure. |
Array declaration is done simply using [] and not any keyword. |
Structure declaration is done with the help of “struct” keyword. |
Arrays is a non-primitive datatype |
Structure is a user-defined datatype. |
Array traversal and searching is easy and fast. |
Structure traversal and searching is complex and slow. |
data_type array_name[size]; |
struct sruct_name{ data_type1 ele1; data_type2 ele2; }; |
Array elements are stored in contiguous memory locations. |
Structure elements may or may not be stored in a contiguous memory location. |
Array elements are accessed by their index number using subscripts. |
Structure elements are accessed by their names using dot operator. |
Share your thoughts in the comments
Please Login to comment...