array en C
Una array es una colección de elementos almacenados en ubicaciones de memoria contiguas.
Estructura en C
Una estructura es un tipo de datos definido por el usuario en C/C++. Una estructura crea un tipo de datos que se puede usar para agrupar elementos de tipos posiblemente diferentes en un solo tipo.
Diferencia entre estructura y array
FORMACIÓN | ESTRUCTURA |
---|---|
Array se refiere a una colección que consta de elementos de tipo de datos homogéneos. | La estructura se refiere a una colección que consta de elementos de tipo de datos heterogéneo. |
Array usa subíndices o “[ ]” (corchetes) para acceder a los elementos | La estructura usa “.” (Operador punto) para acceso a elementos |
Array es puntero ya que apunta al primer elemento de la colección. | La estructura no es un puntero. |
La creación de instancias de objetos Array no es posible. | La creación de instancias de objetos de estructura es posible. |
El tamaño de la array es fijo y es básicamente el número de elementos multiplicado por el tamaño de un elemento. | El tamaño de la estructura no es fijo ya que cada elemento de la estructura puede ser de diferente tipo y tamaño. |
Bit archivado no es posible en un Array. | Bit archivado es posible en una Estructura. |
La declaración de array se realiza simplemente usando [] y no cualquier palabra clave. | La declaración de estructura se realiza con la ayuda de la palabra clave «struct». |
Arrays es un tipo de datos no primitivo | La estructura es un tipo de datos definido por el usuario. |
El recorrido y la búsqueda de arrays es fácil y rápido. | El recorrido de la estructura y la búsqueda son complejos y lentos. |
tipo_datos nombre_array[tamaño]; | struct sruct_name{ data_type1 ele1; tipo_datos2 ele2; }; |
Los elementos de la array se almacenan en ubicaciones de memoria contiguas. | Los elementos de estructura pueden o no estar almacenados en una ubicación de memoria contigua. |
Se accede a los elementos del arreglo por su número de índice usando subíndices. | Se accede a los elementos de la estructura por sus nombres utilizando el operador de punto. |