7.1) Definición de una estructura.
Una estructura es un tipo de dato compuesto
que permite almacenar un conjunto de datos
de diferente tipo. Los datos que contiene
una estructura pueden ser de tipo simple (caracteres, números enteros
o de coma flotante etc.) o a su vez de tipo compuesto (vectores, estructuras,
listas, etc.).
A cada uno de los datos o elementos almacenados
dentro de una estructura se les denomina miembros
de esa estructura y éstos pertenecerán a un tipo de
dato determinado.
La definición de una estructura en C corresponde con
la sintaxis siguiente:
En esta declaración aclararemos que:
struct: es una palabra
reservada de C que indica que los elementos que vienen agrupados a continuación
entre llaves componen una estructura. |
|
nombre_estructura: identifica el tipo
de dato que se describe y del cual se podrán declarar variables.
Se especifica entre corchetes para indicar su opcionalidad. |
|
miembro1, miembro2,...: Son
los elementos que componen la estructura de datos, deben ser precedidos
por el tipo_dato al cual pertenecen. |
Recordemos que una estructura define
un tipo de dato, no una variable, lo que significa
que no existe reserva de memoria cuando el compilador está analizando
la estructura. Posteriormente habrá que declarar variables del tipo
definido por la estructura para poder almacenar y manipular datos.
La declaración de variables de
un determinado tipo de estructura de datos se puede realizar de dos modos:
Primera: Incluir en la propia definición
de la estructura aquellas variables que se van a emplear en el programa.
Esta declaración de variables implica que el ámbito
en el que éstas son reconocidas será el mismo que el de la
declaración del tipo de dato estructura. La sintaxis es:
En estos casos, y si no
se van a declarar más variables de este tipo de dato en otros lugares
del programa, el nombre_estructura es
innecesario, por ello viene entre corchetes. |
Ejemplo: estructura
de una tarjeta bancaria, utilizando esta primera forma:
struct { |
long_int num_tarjeta;
|
char tipo_cuenta;
|
char nombre [80];
|
float saldo;
|
} cliente1, cliente2;
|
|
Segunda: Definir el tipo de dato estructura
con un nombre determinado y declarar posteriormente las variables de ese
tipo de dato. Para ello la estructura se identificará con un nombre
de forma obligatoria.
Ejemplo: estructura
de una tarjeta bancaria, utilizando la segunda forma:
struct { |
long_int num_tarjeta;
|
char tipo_cuenta;
|
char nombre [80];
|
float saldo;
|
} |
struct tarjetas cli1, cli2;
|
|