Abr 19 2009

apuntadores

Jonathan Andres Calderón Roa

Recientemente  comencé a conocer el funcionamiento de los punteros, que es un tema algo complejo de dominar, por lo que realizo este post para explicar el concepto básico y uso.

Los punteros son variables que referencian un lugar en memoria en donde se almacenan otras variables, es decir almacena una dirección de memoria, y se declaran asi: “Tipo de dato al que apuntara” * “Nombre de la variable”, por ejemplo Int *nuevo me creara un puntero que apuntara a una variable de tipo entero, le podemos dar como valor la dirección de otra variable antecediendo un “&”( Int *nuevo = & variable) o que me busque espacio en memoria con la sentencia “new”( Int *nuevo = new int). graficamente podríamos representarlo asi:

punteros1

Existen dos formas de pasar parámetros a una función, una es por valor y la otra es por referencia. Cuando pasamos parámetros por valor mandamos los datos , como por ejemplo :  insertar(23); en donde estamos pasando el entero 23. Cuando pasamos parámetros por referencia mandamos la dirección de memoria donde se ubica la variable, y en la función nos recibirá la dirección un puntero. la dirección de una variable se envía así:  insertar(& variable); y en la función nose recibirá la dirección un puntero por ejemplo entero:  function insertar(int *recivo){, Al hacer esto permitimos la manipulación desde la función de la variable de la cual pasamos la dirección, y graficamente seria algo así:

punteros21Esta es una forma sencilla de explicar el funcionamiento de los punteros.