viernes, 31 de mayo de 2024
Diferencias entre const int y int const
Una respuesta simple: leer hacia atrás.
Los punteros como sabréis son variables especiales que apuntan a otras variables, y las constantes son variables que no cambian durante la ejecución de un programa.
int * ptr = ptr es un puntero hacia int.
int const * ptr = ptr es un puntero hacia constante int.
int * const ptr = ptr es un puntero constante hacia int.
const int * const ptr = ptr es una constante puntero a una constante int.
const int * ptr es igual a int const * ptr
const int * const ptr es igual a int const * const ptr
véase que lo que cambia es lo que esta antes de *ptr o *const ptr.
int ** ptr = is a pointer to pointer(p2p) to int. Un puntero que apunta hacia otro puntero.
int ** const ptr = ptr es un puntero constante de un puntero hacia int.
int * const * ptr = ptr es un puntero a una constante puntero hacia int.
int const **ptr = ptr es un puntero de un puntero hacia una constante int.
int * const * const ptr = ptr es un puntero constante de otro puntero constante hacia int.
¿Como saber si const se refiere al puntero o lo apuntado? Si está del lado derecho del asterico, entonces se refiere a lo apuntado. Si está del lado izquierdo del asterico, del puntero.
Fuente: What is the difference between const int and int const.
Suscribirse a:
Comentarios de la entrada (Atom)
No hay comentarios.:
Publicar un comentario