Definición de estructura (struct) en informática

Clasificado en Informática

Escrito el en español con un tamaño de 6,53 KB

ESTRUCUTURAS Y UNIONES:Los arreglos, podríamos decir, que son estructuras de datos que contienen un numero determinado de elementos del mismo tipo de datos (estructura de datos homogéneas), como por ejemplo:lista de temperatura, Lista de notas, etc.

El problema de los arreglos se limita cuando se requiere un grupos de elementos  de distintos tipos de datos, por ejemplo, cuando se requiere una lista de información de clientes que contengan datos como nombre, edad, dirección, numero de cuenta, etc.

SoluciónLa solución a esta situación es utilizar un tipo de dato registro (que contegan distintos tipos de datos), en que en algunos lenguajes como C, C++, Java, etc. Se denomina ESTRUCTURAS, Una estructura que se compone de elementos individuales llamados miembros.Cada miembro de una estructura puede contener datos de un tipo diferente de otros miembros. En conclusión, una estructura es una colección de uno o más tipos de elementos denominados miembros, cada uno de los cuales puede ser de un tipo de datos diferente.Una estructura puede contener cualquier numero de miembros.Cada miembro tiene un nombre único, denominado nombre del miembro

Ejemplo de los datos de una colección de CD de música:Titulo,Artista,Numero de canciones,Precio y Fecha de compraLa estructura contiene cinco miembros, donde cada miembro tiene su propio tipo de dato

  • DECLARACIÓN DE UNA ESTRUCTURA Una estructura es un tipo de dato que el usuario  define.
  • Antes de usar una estructura se debe declarar en forma similar a una función.Esta  declaración tiene el siguiente formato:
  • struct 

{

  •   ;
  •   ;
  • ;
  • } ;  //la estructura finaliza con un (;)
  • Declaración de la estructura del ejemplo de un CD es
  • struct  colecciónesCD
  • {

char titulo[30];

  •                char artista[25];
  •                int num_canciones;
  •                float precio;
  •                char fecha_compra[8]

DEFINICIÓN DE  VARIABLE  DE UNA ESTRUCTURA

Recordemos que al declarar una estructura de datos, esta especifica un nuevo tipo de dato.

Cada definición de variable para  una estructura  dada crea un área en memoria en donde los datos se almacenan de acuerdo al formato estructurado declarado.

Las variables de estructura se pueden definir de dos maneras:

  1. Listándolas inmediatamente después de la llave de cierre de la declaración de la estructura.
  2. Listando el tipo de la estructura creado seguida por las variables correspondientes en cualquier lugar del programa antes de utilizarlas.

Primera forma :

struct  colecciónesCD

{

                char titulo[30];

                char artista[25];

                int num_canciones;

                float precio;

                char fecha_compra[8]

} cd1, cd2, cd3;

Segunda forma:

Struct  coleccionesCD  cd1, cd2, cd3;

El operador puntero,  ->, sirve para acceder a lo datos  de la estructura a partir de un PUNTERO.

Para utilizar este operador se debe crear una variable Puntero para apuntar a la estructura.

   -> = datos;

Ejemplo, una estructura llamada estudiante.

struct estudiante

{

     char nombre[41];

     int numEstudiante;

     int anioDeMatricula;

     float nota;

};

Se puede definir un puntero llamado punteroEst como un puntero a la estructura

Struct  estudiante *punteroEst;

Struct estudiante mejor;

A los miembros de la estructura estudiante se les puede asignar datos como sigue:

punteroEst=&mejor  // punteroEst  ahora tiene la dirección de la variable mejor;

strcpy(punteroEst -> nombre, “Pepe Alondra”);

punteroEst -> numEstudiante = 3425;

punteroEst -> nota = 8.5;

Nota: Antes de acceder a los miembros de una estructura con un puntero y el operador ->, es necesario crear espacio de almacenamiento en memoria, ejemplo,  la dirección de una estructura ya creada, por ejemplo:

punteroEst = &mejor;

Las estructuras se pueden pasar directamente a una función igual que se hace con las variables. Es posible crear estructuras que tengan como miembros otras estructuras. Esto tiene diversas utilidades, por ejemplo contar con estructuras de datos más ordenadas.Las estructuras anidadas ahorran tiempo en la escritura de programas que utilizan estructuras similares. Se han de definir los miembros comunes sólo una vez en su propia estructura y a continuación utilizar esa estructura como un miembro de otra estructura.

Entradas relacionadas: