sábado, 8 de julio de 2017

Inicialización De Apuntadores


     < Almacenamiento > < Tipo > * < Nombre > = < Expresión >
     Si <Almacenamiento> es extern static, <Expresión> deberá ser una expresión constante del tipo <Tipo> expresado.
     Si <Almacenamiento> es auto, entonces <Expresión> puede ser cualquier expresión del <Tipo> especificado.
     Ejemplos:
1.    La constante entera 0, NULL (cero) proporciona un apuntador nulo a cualquier tipo de dato:
int *p;
p = NULL; //actualización
2.  El nombre de un arreglo de almacenamiento static extern se transforma según la expresión:
a. float mat[12];
float *punt = mat;
b. float mat[12];
float *punt = &mat[0];
3.    Un “cast” apuntador a apuntador:
int *punt = (int *) 123.456;
Inicializa el apuntador con el entero. Esto es, en la dirección a la que apunta la variable punt se almacena el valor 123.
4.    Un apuntador a carácter puede inicializarse en la forma:
char *cadena = Esto es una cadena”;
5.    Se pueden sumar o restar valores enteros a las direcciones de memoria en la forma:
(aritmética de apuntadores)
static int x;
int *punt = &x+2, *p = &x-1;
6.    Equivalencia: Dos tipos definidos como apuntadores a objeto P y apuntador a objeto son equivalentes sólo si P y Q son del mismo tipo. Aplicado a matrices:

nombre_apuntador = nombre_matriz;


Declaración e inicialización de apuntadores


No hay comentarios:

Publicar un comentario