Punteros y referencia de C ++

Punteros y referencia de C ++
En C ++, tanto el puntero como la referencia son dos conceptos poderosos. Con la ayuda del puntero y la variable de referencia, podemos acceder fácilmente a nuestras variables normales fácilmente. Ahora, discutimos en detalles sobre el concepto de puntero y referencia.

Puntero

El puntero es un tipo especial de variable. Almacena la dirección de otra variable. Significa que siempre que cualquier almacenamiento variable en la memoria, obtenga una dirección específica. Pointer almacena esta dirección de esa variable en particular.

Programación Ejemplo 1

#incluir
usando el espacio de nombres STD;
int main ()

int x = 15;
int *p; // declarando un puntero
p = & x;
cout<< &x << endl ; // address of x ;
cout<< p << endl ; // pointing the address of x ;
cout<< *p << endl ; // Dereferencing of a pointer;
regresar 0;

Producción

Explicación
Aquí, declaramos una variable entera x y adentro x asignamos 15. Ahora, declaramos una variable de puntero de tipo entero *P.

p = & x;

Aquí dentro de la variable de puntero P, asignamos la dirección de x. La dirección de X depende totalmente de nuestro sistema operativo.

Si imprimimos y x, muestra la salida de la dirección de la variable x.

Si imprimimos la variable P, también obtiene la salida de la dirección de la variable x.

Pero si imprimimos el *P, en realidad se deduce a nuestro puntero. Significa que obtiene la salida del valor de la variable x.

Programación Ejemplo 2

#incluir
usando el espacio de nombres STD;
int main ()

flotante x = 15;
flotante *p; // declarando un puntero
p = & x;
cout<< &x << endl ; // address of x ;
cout<< p << endl ; // pointing the address of x ;
cout<< *p << endl ; // Dereferencing of a pointer;
regresar 0;

Producción

Explicación
Si tomamos la variable de tipo flotante x y asignamos algún valor 1.5, luego declaramos un puntero para mantener la dirección de X, tenemos que tomar el tipo de puntero flotante.

Cualquier puntero contiene la dirección de la variable; Ambos tienen el mismo tipo de datos. De lo contrario, se produce un error.

Aritmética del puntero

En C ++ con la ayuda del puntero, hemos realizado algunas operaciones aritméticas como incremento, disminución, adición y resta.

Programación Ejemplo 3

#incluir
usando el espacio de nombres STD;
int main ()

int x = 15;
int *p = & x;
cout<< p << endl ; // address of x ;
p ++; // Incremento de Poiner
cout<< p << endl ;
regresar 0;

Producción

Puntero y matriz

La matriz siempre toma memoria de manera contigua. Podemos implementar una matriz con la ayuda de puntero. Porque cuando el puntero se incrementa, siempre apunta al siguiente bloque desde la dirección base de la matriz. Tanto el puntero como la matriz tienen el mismo tipo de datos.

Programación Ejemplo 4

#incluir
usando el espacio de nombres STD;
int main ()

int i;
int arr [] = 5, 10, 15; // declarando una matriz;
int *p = arr; // inicializando el valor de la matriz a un puntero;
cout<< *arr << endl ;
para (i = 0; i < 3 ; i++)

cout<< *p << endl ;

regresar 0;

Producción

Explicación
Podemos acceder a una matriz a un puntero. En este ejemplo, simplemente declaramos una matriz e inicializamos algunos valores. La dirección base de la matriz a un puntero p. Ahora, podemos imprimir el valor de cada elemento de la matriz a través de un puntero. Si incrementamos el valor de PTR, simplemente va al siguiente bloque desde la dirección base de la matriz.

Referencia

Excepto la variable normal y el puntero, C ++ nos proporciona un tipo especial de variable llamada variable de referencia. Ahora, aprendemos sobre la variable de referencia.

Características de la variable de referencia

  1. Antes de declarar una variable de referencia, simplemente escribimos 'y' símbolo. Muchos de nosotros tenemos una idea errónea de que '&' es tratado como dirección del operador. Pero en realidad no se trata así en términos de variable de referencia.
  2. Cuando declaramos la variable de referencia en ese momento, la inicialización debe hacerse. De lo contrario, se produce un error.
  3. La variable de referencia no se puede actualizar.

Ejemplo de una variable de referencia

int x = 5;

Si queremos mantener un nombre alternativo de la variable x, tenemos que seguir este procedimiento.

int & y = a;

Significa que la variable de referencia solo se crea para referir la variable existente en el programa. Con la ayuda de la variable de referencia, accedemos a la variable x.

Programación Ejemplo 5

#incluir
usando el espacio de nombres STD;
int main ()

int x = 15;
int & y = x;
cout<< x << “ “ << y << endl ;
++y;
cout<< x << “ “ << y << endl ;
regresar 0;

Producción

Explicación
Aquí, presentamos una variable de referencia y que se refiere a la variable x por línea & y = x. En x, se asigna 5. Si queremos imprimir la variable x e y, ambos muestran el mismo resultado 5.

Si incrementamos 1 al valor de y e imprimimos tanto la variable x e y, muestra el mismo resultado 6.

Conclusión

Discutir en detalle sobre el concepto de puntero y referencia, hemos llegado a esta conclusión de que la dirección es el concepto más poderoso en c++. Con la ayuda del puntero y la referencia, podemos monitorear las variables, la matriz, la función, la estructura, etc. fácilmente.