Вы находитесь на странице: 1из 2

LOS APUNTADORES:

Los apuntadores son variables que almacenan direcciones de memoria. En general una variable contiene un valor especfico dependiendo de como fue declarada. Un apuntador contiene la direccin de una variable que contiene un valor especfico. Una variable se refiere directamente a un valor y un apuntador se refiere indirectamente a un valor. Apuntadores usados en C debido a que a veces son la nica manera de expresar un clculo. Se puede llegar a obtener un cdigo ms compacto y eficiente. Cuando se emplean sin cuidado pueden crear programas imposibles de entender. Cuentan con una declaracin propia. Los apuntadores disponen de dos operadores: El operador unario o mondico & devuelve la direccin de memoria de una variable; El operador de indireccin o desreferencia * devuelve el ``contenido de un objeto apuntado por un apuntador''.

Declaracin De Apuntadores: Cuando se declara una variable, el compilador reserva un espacio de memoria para ella y asocia el nombre de sta a la direccin de memoria desde donde comienzan los datos de esa variable. Las direcciones de memoria se suelen describir como nmeros en hexadecimal. Un apuntador es una variable cuyo valor es la direccin de memoria de otra variable. Se dice que un apuntador apunta a la variable cuyo valor se almacena a partir de la direccin de memoria que contiene el apuntador. Por ejemplo, si un apuntador p almacena la direccin de una variable x, se dice que p apunta a x.

Los apuntadores como cualquier otra variable deben de ser declarados antes de que puedan ser utilizados. El tipo de un apuntador lo proporciona implcitamente el tipo de la variable a la que apunta.

Los apuntadores pueden ser declarados para apuntar a objetos de cualquier clase. La sintaxis general de declaracin es: <tipo> * <variable> Ejemplos de declaraciones: La variable contPtr es del tipo apuntador a entero, (int *) y se lee ``contPtr es un apuntador a int'' o ``contPtr apunta a una variable entera''.

NOTA: Un apuntador a cualquier tipo de variables es una direccin en memoria, la cual es una direccin entera, pero un apuntador NO es un entero. La razn por la cual se asocia un apuntador a un tipo de dato, es por que se debe conocer en cuantos bytes esta guardado el dato. De tal forma, que cuando se incrementa un apuntador, se incrementa el apuntador por un ``bloque'' de memoria, en donde el bloque esta en funcin del tamao del dato. Por lo tanto para un apuntador a un char, se agrega un byt a la direccin y para un apuntador a entero o a flotante se agregan 4 bytes. De esta forma si a un apuntador a flotante se le suman 2, el apuntador entonces se mueve dos posiciones float que equivalen a 8 bytes.

Para que una funcin te devuelva un arreglo se debenusar apuntadores, no es complicado, por ejemplo: #include <stdlib.h> // biblioteca para llamar a malloc int *devuelve_arreglo () { int *arreglo; // declaramos en apuntador int tamano = 4; // asignamos el tamao del vector arreglo = (int*) malloc ( sizeof(int) * tamano); // se crea el arreglo arreglo[0] = 1; // asignamos valores arreglo[1] = 2; // asignamos valores arreglo[2] = 3; // asignamos valores arreglo[3] = 4; // asignamos valores return arreglo; } para manipularlo: int *arreglo; // declaramos el arreglo arreglo = devuelve_arreglo(); // llamamos a la funcion

Вам также может понравиться