Академический Документы
Профессиональный Документы
Культура Документы
Punteros
Qu tienen en comn?
Una variable puntero es una vriable que "apunta a otra variable" Como puntero que es, el valor que almacena nos indica dnde localizar la "otra variable". Estas "otras variables" en ningn caso sern variables declaradas en la seccin VAR de cualquier mbito de un programa Hasta ahora, valor almacenado y nombre de variable eran prcticamente intercambiables en muchos contextos.
Manuel Ortega Ortiz de Apodaca
En Pascal todas las variables pertenecen a un tipo. Los punteros tambin. Si un puntero sirve para apuntar a algo, es lgico que, de pertenecer a un tipo, ste venga determinado por el tipo de informacin a la que apuntar. Podemos hablar entonces de punteros que apunten a Integer's, Reales, Arrays, registros..etc
Decl_tipo_puntero::= identificador "=" "^" Nombre_tipo ";" Nombre_Tipo::= Cualquier tipo vlido Ejemplo Type Tvector = array[Tindice] of Telemento; Punt_enteros = ^Integer; Punt_Char = ^Char; Punt_Vector = ^Tvector;
Manuel Ortega Ortiz de Apodaca
Una vez declarada una variable de tipo puntero podemos hacer que sta apunte a tres "tipos de sitios"
1. A "vaya usted a saber dnde"
Puntero sin inicializar
2. A nada (NIL)
El valor NIL es un valor especial de Pascal, al que puede apuntar cualquier variable puntero, sea del tipo que sea.
Asignacin.
Al igual que el resto de las variables, ser posible siempre que ambas pertenenzcan al mismo tipo (apunten al mismo tipo de informacin) Resultado. Ambos punteros apuntarn al mismo sitio. Si a un puntero le asignamos el valor NIL entonces apuntar a "Nada"
Si lo que queremos es que un puntero tenga "su informacin propia a que apuntar" le asignaremos esta mediante la utilizacin del procedimiento NEW.
La invocacin New(mi_puntero) har que, despues de la ejecucin del procedimiento, mi_puntero est apuntando a "algo" de las caractersticas de lo apuntable por l.
Manuel Ortega Ortiz de Apodaca
Comparacin en igualdad
Punt1 = punt2 {true si apuntan al mismo sitio (memoria)} Punt1^=punt2^ {true si lo apuntado por ambos tiene el mismo valor}
Lista
Nil