const int l = 2; const int *p= &l;
p es un puntero a un entero, declarado como constante. El entero al que apunta p no debe ser cambiado. El puntero p en sí puede modificarse. Así, *p = 3
no es válido, pero p++
sí lo es.
Además, se puede declarar un puntero constante, que no puede ser cambiado:
En la declaración:
int *const p;
p es un puntero constante que no puede ser cambiado. El carácter al que apunta sin embargo sí puede modificarse.
Por último :
const int m = 3; const int *const p = &m;
indica que ni el puntero p ni el carácter al que apunta pueden ser modificados.
Estas construcciones pueden utilizarse para mejorar la calidad del código. Si un puntero o una variable no serán nunca cambiados deben declararse como constantes. El compilador indicará si inadvertidamente se han modificado estos valores.
Comentarios, sugerencias, ideas...
© Beatriz Fuentes Arenaz, 1996-1997