Variables

Páginas: 3 (559 palabras) Publicado: 5 de septiembre de 2011
Apuntadores
Es una variable sonde se puede asignar una dirección de memoria.
Definición de un apuntador
El operador de indirección o dereferencia * devuelve el contenido de un objeto apuntado porun apuntador'.
El operador unario o monádico & devuelve la dirección de memoria de una variable.
La sintaxis para declarar un apuntador es:

Ejemplo:

int *px,*py;
char *pc;

Considere elsiguiente ejemplo:

Void main()
{
int x = 1, y = 2;
int *ap;
ap = &x;
y = *ap;
x = ap;
*ap = 3;
}
Supongamos quela variable x está en la localidad de la memoria 100, y en 200 y ap en 1000. Nota: un apuntador es una variable, por lo tanto, sus valores necesitan ser guardados en algún lado.
|100 |200|1000 |
|x |1 |y |2 |ap |100 |

int x = 1, y = 2;
int *ap;
ap = &x;

Después y obtiene el contenido de ap. En el ejemplo ap apunta a la localidad de memoria100 -- la localidad de x. Por lo tanto, y obtiene el valor de x -- el cual es 1.

x = ap;
|100 |200 |1000 |
|x |100 |y |1 |ap |100 |

Comose ha visto C no es muy estricto en la asignación de valores de diferente tipo (apuntador a entero). Así que es perfectamente legal (aunque el compilador genera un aviso de cuidado) asigna el valoractual de ap a la variable x. El valor de ap en ese momento es 100.
*ap = 3;
|100 |200 |1000 |
|x |3 |y |1 |ap |100 |

Finalmente se asignaun valor al contenido de un apuntador (*ap).

Importante: Cuando un apuntador es declarado apunta a algún lado. Se debe inicializar el apuntador antes de usarlo. Por lo que:
main(){
int *ap;
*ap = 100;
}
Puede generar un error en tiempo de ejecución o presentar un comportamiento errático.
El uso correcto será:
main()...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Variable
  • Variables
  • variables
  • variable
  • variables
  • Variables
  • variables
  • variable

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS