Como ya se ha señalado el puntero constante quizás lo más común es
const char* p;
La variable P se puede cambiar, pero los puntos de datos p a es unmodifable .
Sin embargo, mover la palabra clave const a la izquierda del asterisco no altera el significado de la declaración:
char const* p;
prefiero la tarde ya que se vuelve mucho más fácil de recordar dónde colocar las palabras clave const cuando declarar punteros const a los punteros const:
char const* const* p;
de nuevo, la variable p puede cambiar y los datos señalado es inmodificable. Además, los datos se declaran como punteros const, lo que significa que apunta a datos que no se pueden modificar.
La notación más común para este tipo es
const char* const* p;
La colocación de la palabra clave const inmediatamente a la izquierda del asterisco se modifica (o signo de referencia) hace que sea fácil crear tipos complejos que implican la palabra clave const. Por ejemplo, un puntero a los punteros const:
char const** p;
y un puntero constante a los punteros:
char* const* p;
Recuerde a "leer" las declaraciones de puntero desde la derecha hacia la izquierda, y no declaran más de un puntero en cada declaración para evitar mucha confusión.
Esta publicación es confusa y no distingue claramente entre cuando el valor es const y cuando el puntero es const. –
Toma mucho más que leer una publicación para comprender claramente la noción de todos modos. –
Tampoco puedes aprender las leyes de tráfico simplemente manejando. No aprenderá a programar sin programación, y no aprenderá lo que es legal y confiable sin leer libros. –