12.185 cursos gratis
8.726.696 alumnos
Facebook Twitter YouTube
Busca cursos gratis:

Introducción al lenguaje Pascal

Autor: emarinch@racsa.co.cr
Curso:
9,63/10 (8 opiniones) |40127 alumnos|Fecha publicación: 01/03/2006
Envía un mensaje al autor

Capítulo 29:

 Punteros


Introducción

Como vimos anteriormente en la lección número 5, las estructuras de datos dinámicas son aquellas cuya ocupación de memoria puede aumentar o disminuir durante el tiempo de ejecución. Mediante los punteros, tema que estudiaremos a continuación, podemos crear estructuras de datos dinámicas que tienen capacidad de variar en tamaño y ocupar tanta memoria como realmente requieran. Estas estructuras son llamadas punteros.

7.1 Concepto

Los punteros son también llamados apuntadores. Son tipos de datos que permiten crear estructuras de datos dinámicas, las cuales pueden variar en tamaño y memoria requerida. Las variables que se crean y se destruyen durante la ejecución se llaman variables dinámicas o anónimas. Así, durante la ejecución de un programa, puede haber una posición de memoria específica asociada con una variable dinámica y posteriormente puede no existir ninguna posición de memoria asociada con ella.

Una estructura de datos dinámica es una colección de elementos llamados nodos de la estructura - normalmente tipo registro- que se enlazan o encadenan juntos. Este enlace se establece asociando con cada nodo un puntero que apunta al nodo siguiente de la estructura.

Las estructuras de datos dinámicas son útiles para almacenar y procesar conjuntos de datos cuyos tamaños cambian durante la ejecución del programa, por ejemplo, el conjunto de trabajos que se han introducido en una computadora y están esperando su ejecución o el conjunto de nombres de pasajeros y asignación o el conjunto de nombres de pasajeros y asignación respectiva de asientos de un vuelo de avión determinado.

Pascal proporciona los métodos para asignar y liberar espacio de memoria utilizando punteros y los procedimientos new  y dispose.

El tipo de datos puntero es de tipo simple pues no se puede romper en otros componentes más pequeños, como sí sucede con el array o el registro. Los punteros son variables que se utilizan para almacenar la dirección de memoria de otra variable. Las variables que se utilizan para almacenar direcciones son llamadas variables puntero o simplemente puntero.

Gráficamente se representa así

Punteros

Al definir un puntero se debe indicar el tipo de valores que se almacenarán en las posiciones designadas por los punteros. Esto se debe a que los diferentes tipos de datos requieren distintas cantidades de memoria para almacenar sus constantes, una variable puntero puede contener una dirección de una posición de memoria adecuada sólo para un tipo dado.

Por esta razón se dice que un puntero apunta a una variable particular, es decir, a otra posición de memoria.

Una variable tipo puntero contiene la dirección de la posición de otra variable.

7.1.1 Declaración de punteros

Se puede declarar un puntero a una variable carácter, a un array de enteros, a un registro, o a cualquier otro tipo de dato. Y se pueden declarar como Var o Type.

La sintaxis para la declaración de un puntero es la siguiente:

Var

   Nombre-variable : ^ identificador - tipo

Ejemplo:

Var

   Ptr : ^Real

La variable Ptr apunta a un tipo de dato TipoElemento.

Un ejemplo gráfico es el siguiente, donde la variable P contiene 059164 que es la dirección de memoria donde está la variable entera apuntada 345:

Punteros

Capítulo siguiente - Operaciones con punteros
Capítulo anterior - Práctica para el examen

Nuestras novedades en tu e-mail

Escribe tu e-mail:

Al presionar "Recibir" estás dándote de alta y aceptas las condiciones legales de mailxmail

Cursos similares a Introducción al lenguaje Pascal


  • Vídeo
  • Alumnos
  • Valoración
  • Cursos
1. Introducción al lenguaje HTML
¿Te interesa entrar al mundo de la programación web ? ¡Entonces este curso de... [14/04/11]
739
Curso con video
2. Introducción al lenguaje SQL
Curso de programación, aprende el lenguaje sql que es un lenguaje de acceso a bases... [16/11/11]
131  
3. Algoritmos y lenguaje C
Este curso pretende dar a conocer las explicaciones más simples del trabajo de los... [13/01/06]
36.357  

¿Qué es mailxmail.com?|ISSN: 1699-4914|Ayuda
Publicidad|Condiciones legales de mailxmail


Ponte al día de Programación con nuestros cursos gratis