Cap Tulo 8 Apuntadores

Páginas: 44 (10774 palabras) Publicado: 26 de marzo de 2015
Capítulo 8
Apuntadores
Direcciones de Memoria
Podemos imaginarnos la memoria principal de una computadora como un conjunto de
celdas consecutivas de memoria cada una de un tamaño de un byte. Cada celda tiene su
propia dirección, como se ilustra en la figura 8-1.

Figura 8-1. Memoria Principal
Una variable aparte de tener un nombre tiene también una dirección. Esta dirección es
única. Si lavariable es de un byte su dirección es la dirección de la celda que la contiene.
Si una variable ocupa dos o más bytes, su dirección es la dirección de su primera celda,
esto es la dirección más baja. En la figura 8-2 se muestra el mismo bloque de memoria de
la figura 8-1 después de que se han hecho las siguientes declaraciones, suponiendo que
una variable de tipo int ocupa 4 bytes de memoria:
char x =8;
int y = 1234;

ITSON

Manuel Domitsu Kono

124

Apuntadores

Figura 8-2. Memoria principal con variables
Dado que cada variable tiene una dirección única, es posible referirse a una variable ya
sea por su nombre o por su dirección. Por ejemplo podríamos referirnos a la variable x
declarada anteriormente, como a la variable de tipo char que tiene la dirección 1000 y a y
como a la variableentera cuya dirección es 1001. De hecho, en el lenguaje máquina todas
las referencias a las variables son a través de sus direcciones ya que no existen los
nombres de variables. Uno de los grandes avances introducidos por los lenguajes de
programación es el concepto de los nombres simbólicos de las variables tal como x, y. Lo
que nos libera de recordar las direcciones en las que se encuentran lasvariables.
Una de las características con las que fue diseñado el lenguaje C es la permitirnos un
control casi completo del hardware al mismo tiempo de que la programación fuese al
mismo nivel que con un lenguaje de alto nivel. Para lograr este control del hardware, así
como para hacer más eficientes algunas de las tareas para acceder las variables, C
requiere de la capacidad de manipular directamentelas direcciones de memoria.

Operador de Dirección (&)
En realidad, desde los primeros programas hemos usado el concepto de dirección de una
variable. Recuerde que en la función scanf(), le pasamos como argumentos las
direcciones de las variables donde queremos que se almacenen los datos leídos. Para
determinar la dirección en que se encuentra una variable usamos el operador de
dirección (&), elcual es un operador unario que nos da la dirección de una variable. El
operador & sólo opera con variables creadas en la memoria no con expresiones ni
variables registro. Para las declaraciones de variables del ejemplo anterior, la expresión
&x vale 1000 y &y vale 1001. El operador de dirección aparece en la tabla de
precedencias en la segunda línea.

ITSON

Manuel Domitsu Kono

Capítulo 8Apuntadores

125

Apuntadores
Las direcciones de las variables son constantes, esto es, no cambian de posición durante
la ejecución del programa. Sin embargo la necesidad de crear expresiones para calcular
de dirección de un dato o de escribir instrucciones que operen con diferentes direcciones
introduce la necesidad de tener variables que en lugar de almacenar datos comunes,
almacenen direcciones. Atales variables se le conocen como apuntadores.
Al igual que con las variables comunes los apuntadores deben declararse antes de
usarse. La sintaxis para declarar un apuntador es la siguiente:
tipo *nomPvar1[ = pExp1][, *nomPvar2[ = pExp2]...]

nomPvar1, nomPvar2 ... son los apuntadores que se están declarando. El asterisco al
lado de cada identificador indica que es una declaración de un apuntadory no de una
variable común. El apuntador va a contener una dirección de un dato del tipo tipo
especificado en la declaración. Se dice que el apuntador apunta al dato del tipo
especificado.
Al igual que con las variables comunes, los apuntadores pueden inicializarse al momento
de su declaración. pExp1, pExp2, ... son expresiones que al evaluarse nos dan las
direcciones a las que se inicializan...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Cap Tulo 8
  • CAP TULO 8
  • CAP TULO 8 DEL LIBRO
  • Cap Tulo 8
  • Cap Tulo 8 Charlie
  • Cap Tulo 8 PEDAGOGIA DEWEY
  • Resumen Sapag Cap Tulo 8
  • Cap Tulo 8 Geograf A Y Geopol Tica

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS