09.05.2013 Views

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

Algoritmos y Programación en Pascal

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

344 Capítulo 16. Punteros<br />

o bi<strong>en</strong><br />

Figura 16.5. puntero iniciado <strong>en</strong> nil.<br />

Por ejemplo, la sigui<strong>en</strong>te asignación define el puntero apCar:<br />

apCar:= nil<br />

Gráficam<strong>en</strong>te, el hecho de que una variable puntero no apunte a nada se repres<strong>en</strong>ta<br />

cruzando su celda de memoria con una diagonal, o bi<strong>en</strong> mediante el<br />

símbolo (prestado de la Electricidad) de conexión a tierra, como se indica <strong>en</strong> la<br />

figura 16.5.<br />

En cuanto al tipo del valor nil es de resaltar que esta constante es común a<br />

cualquier tipo de puntero (sirve para todos), pues sólo indica que el puntero está<br />

anulado.<br />

En el capítulo sigui<strong>en</strong>te se pondrá de manifiesto la utilidad de esta operación.<br />

Por el mom<strong>en</strong>to, digamos solam<strong>en</strong>te que es posible saber si un puntero está<br />

anulado, mediante la comparación con nil, por ejemplo mediante apNum1 = nil.<br />

❡❡ <br />

Obsérvese que no es necesario iniciar los punteros apuntando a nil. En el<br />

ejemplo anterior se inician usando New, esto es, creando la variable referida.<br />

16.2 Aplicaciones no recursivas de los punteros<br />

Se ha com<strong>en</strong>tado <strong>en</strong> la introducción que las aplicaciones más importantes<br />

de los punteros, están relacionadas con las estructuras de datos recursivas, que<br />

estudiaremos <strong>en</strong> el capítulo sigui<strong>en</strong>te. El apartado que pone cierre a éste pres<strong>en</strong>ta<br />

algunas situaciones con estructuras no recursivas <strong>en</strong> las que los punteros resultan<br />

útiles.<br />

El hecho de que los punteros sean objetos de tipo simple es interesante y<br />

permite, <strong>en</strong>tre otras cosas:<br />

1. La asignación de objetos no simples <strong>en</strong> un solo paso.<br />

2. La definición de funciones cuyo resultado no es simple.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!