[Aprendizaje de registros de C & C ++] puntero y constante

Hay tres casos de puntero modificado const

  1. puntero modificado const --- puntero constante

  2. constante modificada const --- constante de puntero

  3. const modifica punteros y modifica constantes

1. puntero const modificado --- puntero constante

const modifica el puntero, el punto del puntero se puede cambiar y el valor al que apunta el puntero no se puede cambiar

int a = 10;
int b = 10;
		

//const修饰的是指针,指针指向可以改,指针指向的值不可以更改
const int * p1 = &a;
p1 = &b; //正确
// *p1 = 100; // 报错

int const * a; //同上

p1 es un puntero a un objeto constante de tipo int, llamado puntero constante.

Nota: const ( constante ) int * ( puntero ) p. const va seguido de *, por lo que * p no se puede modificar, pero p se puede modificar.

2. constante modificada const --- constante de puntero

const modifica una constante, el punto del puntero no se puede cambiar y el valor al que apunta el puntero se puede cambiar

int a = 10;
int b = 10;


//const修饰的是常量,指针指向不可以改,指针指向的值可以更改
int * const p2 = &a;
//p2 = &b; //错误
*p2 = 100; //正确

Como su nombre lo indica, una constante de puntero es una constante, pero es modificada por un puntero.

Nota: int * ( puntero ) const ( constante ) p2. const va seguido de p2, por lo que p2 no se puede modificar, mientras que * p2 se puede modificar.

3. const modifica punteros y constantes

int a = 10;
int b = 10;


//const既修饰指针又修饰常量
const int * const p3 = &a;
//p3 = &b; //错误
//*p3 = 100; //错误

p3 es un puntero constante y luego apunta a un objeto constante de tipo int. Se llama puntero constante a una constante.

Supongo que te gusta

Origin blog.csdn.net/Zhouzi_heng/article/details/112340636
Recomendado
Clasificación