Hola y bienvenidos.
Vamos a realizar a continuación nuestro ejemplo de copia de valores en el lenguaje.
Si están listados, vamos.
Bien para revisar nuestro ejemplo.
De momento no vamos a utilizar funciones, así que voy a limpiar nuestro código y más adelante vamos
a retomar ese tema de funciones.
Bien.
Así que lo que vamos a ver en este ejemplo es cómo se realiza la copia de valores en el lenguaje C,
Así que, de manera similar a lo que vimos en la teoría, vamos a definir una variable, la variable
A.
Posteriormente definimos nuestra variable B y la vamos a asignar una copia del valor de la variable
A.
Esto quiere decir que en memoria se crean dos variables.
Se creará por un lado la variable a y por otro lado la variable b, las cuales se encuentran en diferentes
direcciones de memoria.
Si vemos la dirección de memoria de cada una de estas variables y a nuestra animación les estamos mostrando
las direcciones de memoria de cada una de estas variables.
Así que con esto podemos asegurar que están en diferente posición de memoria y entonces cada una de
estas variables son distintas.
Por lo tanto, cualquier valor que hagamos sobre una no va a afectar para nada el valor de la otra variable.
Bien.
Sin embargo, en esta primera línea en la línea cinco, le estamos asignando el valor de diez a la variable
A, así que podemos saber que ya tenemos el valor de diez y en la siguiente línea en la línea seis.
Si llegáramos a ejecutar esta línea, entonces se realiza una copia de la variable A hacia la variable
B, podemos ver que es exactamente el mismo valor, pero las direcciones de memoria tienen terminación
distinta, por lo tanto, son diferentes direcciones de memoria.
Ahora, como siguiente paso, si modificamos el valor de la variable B y ejecutamos esta línea, entonces
en memoria podemos observar que solamente se está modificando el valor de la variable b y no se modifica
para nada el valor de la variable A, ya que son variables distintas, como hemos comentado.
Y por último, simplemente para comprobar esto, si mandamos a imprimir el valor de cada una de las
variables, vamos a imprimir el valor de A es un valor de tipo entero y también aprovechamos para imprimir
el valor de la variable b.
Valor de B.
Imprimimos cada uno de los valores y según lo esperado.
Podemos observar en la salida que el valor de la variable A es el valor de then, ya que es el último
valor que se le asigna a esta variable.
Y el valor de la variable B sí se modificó, pero solamente se alteró.
Este valor no modifica para nada el valor de la variable A, ya que son diferentes direcciones de memoria.
Así que este ejemplo, aunque es muy elemental, esto nos va a permitir entender el siguiente tema que
vamos a ver, que es el tema de apuntadores.
Así que ya no vamos a trabajar directamente con valores, sino que vamos a trabajar con las referencias
de memoria.
Vamos a detener hasta aquí este video y continuamos en el siguiente para comenzar con el tema de apuntadores.
Saludos.