Tipos de funciones

Paso de parámetros

Los parámetros se pasan normalmente por valor, pero también se pueden pasar por referencia. El paso de parámetros por referencia admite dos tipos de sintaxis: escribiendo el operador & antes del nombre del parámetro y otro caso es escribiendo el operador * (asterisco) antes del nombre del parámetro (esto lo analizaremos cuando veamos apuntadores).

Paso de parámetros es por valor:

           int funcion1 (int x, int y)

Esto quiere decir que la función1 recibirá únicamente el valor de los dos parámetros, x e y. Podrá utilizar esos valores dentro de su código, e incluso podrá cambiarlos. Pero cualquier cambio en x e y no afectará a los parámetros actuales, es decir, a los parámetros del programa que llamó a función1.

Llamada a la función:

           resultado = funcion1 ( x, y);

Paso de parámetros por referencia con el operador &

            int funcion2 (int x, int *y)

En esta función, el parámetro “x” se pasa por valor y el parámetro “y” se pasa por referencia.  Por lo que esta función podrá hacer cambios en la variable “x” sin afectar al valor original, mientras que los cambios que haga a la variable “y” se verán reflejados en todo el programa.

Llamada a la función:

           resultado = funcion2 ( x, &y);

Veamos un resumen de cómo pasar datos por valor y por referencia, además de cómo deben ser recibidos por la función: