TIPO DE DATO ABSTRACTO
Definición:
Un TDA o tipo de dato abstracto, es un tipo de dato definido por el programador y responde al mismo trato de un tipo de dato primitivo, (int, float, etc.).
Es una abstracción que permite modelar las características de un elemento en particular.
Su definición se compone de elementos que corresponden a ese tipo de dato.
Variables:
Se definen variables para acceder a las estructuras creadas ya que con estas se crea en memoria un espacio con el formato estructurado ya declarado.
Se pueden definir de dos formas:
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 creada por las variables correspondientes en cualquier lugar del programa antes de utilizarlas.
Alias y sinónimos:
Se definen alias o sinónimos con la instrucción typedef para crear tipos de datos equivalentes a los ya existentes, el objetivo consiste en utilizar nombres más apropiados y más cortos para los tipos de datos puesto que evitamos escribir la palabra struct en la declaración de las variables.
Operaciones aplicables a las estructuras:
De creación, de consulta, de modificación y propias del tipo, se definen en la creación de TDA.
Ejemplos:
Inicializar datos
Sea una estructura simple:
struct Revista{
Char titulo[25];
Float precio;
Int pag;
};
Declaración de variables:
struct Revista a,b;
inicializar
struct Revista a= {“IEEE Computer”, 23.54};
Revista b={”C++”,35.46};
Obtener la dirección de memoria de una estructura
*p y *q apuntan a una Revista
struct Revista *p = &a;
Revista *q = &b;
Asignarla a otra estructura
a = b ;
Estructuras anidadas
Son el uso de estructuras como elementos dentro de una estructura, nos sirven para ahorrar líneas de código, tiempo de ejecución y mejor organización de los datos.
|
struct empleado { char nombre_emp[30]; char direccion[25]; char ciudad[20]; char provincia[20]; long int cod_postal; double salario; }; struct clientes { char nombre_cli[30]; char direccion[25]; char ciudad[20]; char provincia[20]; long int cod_postal; double saldo; }; |
Por ejemplo:
Se observan elementos de ambas estructuras que se repiten para lo cual es posible utilizar un agrupamiento de estos elementos y utilizar una anidación de estructuras.
|
struct info_dir { char direccion[25]; char ciudad[20]; char provincia[20]; long int cod_postal; }; |
|
struct empleados { char nombre_emp[30]; struct info_dir domicilio_emp; double salario; }; struct clientes { char nombre_cli[30]; struct info_dir domicilio_cli; double saldo; }; |
Referencias
Ceballos, Francisco Javier: C/C++ Curso de Programación, 2da Edición. RA-MA,
2002.
Cairó,
Osvaldo. Fundamentos de Programación. Piensa en C. 1era Edición.
PEARSON EDUCACIÓN, 2006.
Departamento de computación UNAN-Leon. DECLARACION DE TIPOS DE DATOS PROPIOS, ESTRUCTURAS EN C. recuperado el 07/09/2022 de: https://kesquivel.files.wordpress.com/2013/05/estructuras2013final2.pdf
Gottfried, Byron S: Programación en C. McGraw Hill, 1991.
Joyanes Aguilar, Luis; Zahonero Martínez
Ignacio: Programación en C. McGraw
Hill, 2001.

