Anterior Crear su blog Siguiente Señalar un abuso Puntuar :  
Tribuna libre
Mi foto
Programa en C y C++
Publicado el 01/11/2009
Por jcca007
Humor : Alegre

OK, espero que hasta donde llevamos se vaya entendiendo todo bien, si no, pues no duden en preguntar, ahora vamos a empezar a meternos con temas un poco mas complejos (o al menos para mi fueron complejos) por lo que tratare de dar un ejemplo por lo menos pero que sea claro y no tratar de llenarlos de ejemplos que tal vez los puedan confundir mas. Recuerden que en la Internet pueden encontrar muchos mas ejemplos de los temas que estamos tratando, y por ello es indispensable que se entienda bien el ejemplo mas básico por que de él parten los demás.

 

Bueno revisando mis sagradas notas sobre apuntadores, jaja, me parecio correcto ponerles lo que mi profesor nos dio de definición por que creo que se entiende bastante bien, asi que aquí va:

 

“Los apuntadores son variables que almacenan direcciones de memoria. En general una variable contiene un valor de cualquier tipo con el que se declara la variable, sin embargo, un apuntador contendrá la dirección en la memoria de la variable que contiene un determinado valor. Esto significa que de manera indirecta un apuntador refiere a un valor, en tanto que una variable refiere directamente a un valor.

 

Resalte la ultima parte porque me parece que lo resume todo, un apuntador, APUNTA, a una dirección de memoria que contiene un cierto valor.

 

La declaración para los punteros es la siguiente:

 

[tipo de dato] *[nombre de la variable puntero];

Como puedes ver su declaración es casi idéntica a la de una variable normal, solo que agregamos el asterisco (*) y con ello indicamos que es un apuntador o puntero, no olvides este asterisco al declararlos.

 

Ahora para poder asignarle la dirección de memoria donde se encuentra un cierto valor, se utiliza el operador & tampoco olvides esto.

 

Muy bien ahora veamos el ejemplo mas sencillo para entender los apuntadores y lo explicamos al final, OK.

 

Ejemplo Nº 31

 

#include <stdio.h>

 

int x,y;

int *apuntador;

 

int main()

{

      printf("Programa para ilustrar como se pasa un valor por medio de apuntadores\n\n");

      printf("Le asignamos a X el valor de 10\n");

      printf("Y se lo pasaremos a Y por medio de un apuntador\n\n");

      x=10; //Le asignamos un valor a la variable X.

      apuntador=&x; //Le asignamos la direccion de memoria donde esta el valor de X.

      y=*apuntador; //Le damos a Y el valor de la direccion donde apunta el puntero.

      printf("X=%d Y=%d\n\n",x,y); //Imprimimos los dos valores de X y de Y.

 

      system("PAUSE");

      return 0;

}

 

Fíjate como le hemos pasado el valor del apuntador a una variable llamada “y”, que realmente lo que le estamos diciendo es, que tome el valor contenido en una cierta dirección de memoria, que viene siendo el valor de “x”.

 

Cuida que tanto el tipo de la variable a la que le vas a pasar algún valor, como el tipo del apuntador, sean compatibles, esto es del mismo tipo.

 

Se que tal vez sea algo confuso y que tal vez no los utilicemos tanto, pero veras en que en artículos posteriores se van a ocupar, especialmente para los arreglos dinámicos, pero primero analiza este tema de apuntadores, y si no esta claro pues a buscar mas información o preguntar, son la única manera de disipar las dudas. Suerte.
Sin comentarios
Añadir un comentario

Mi calendario
< Nov. 2009  
L M M J V S D
      1
2345678
9101112131415
16171819202122
23242526272829
30      
Tráfico
3 conectados
8768 visitantes
Agregadores RSS
bloglines
google
netvibes
newsburst
newsgator
pluck
yahoo
Mi bloc personal.
Listo por fin pude subir lo de manejo de archivos, lo dividi en tres partes por que es algo extenso en cuanto a los ejemplos, espero les sirva.