Tengo básicamente un código tal que así:
int valor = 50;
int resultado;
void main(void)
{
resultado = operacion(valor);
}
Cuando lo ejecuto, resultado no me da el valor que busco, luego depurando me doy cuenta que si paso un parámetro ya sea por valor o por referencia, dentro de la función, la dirección del parámetro no es la misma que la dirección de la variable global valor.
Pongo unas imágenes para que se entienda gráficamente
En la foto siguiente, estoy en la línea antes de aplicar la función y se aprecia la dirección de la variable
En el siguiente step, me meto en la función
No entiendo por qué pasa eso. Y da igual si el paso es por valor o referencia. ¿sugerencias?