Prototipo de una función

Un prototipo es una declaración de una función. Consiste en una definición de la función sin cuerpo y terminado con un ";". La estructura de un prototipo es:

           <tipo> func(<lista de declaración de parámetros>);

Por ejemplo:      int Mayor(int a, int b);

Los prototipos sirven para indicar al compilador los tipos de retorno y los tipos de los parámetros de una función, de modo que compruebe si son del tipo correcto cada vez que se use esta función dentro del programa, o para hacer las conversiones de tipo cuando sea necesario. Los nombres de los parámetros son opcionales, y se incluyen como documentación y ayuda en la interpretación y comprensión del programa. El ejemplo de prototipo anterior sería igualmente válido y se podría poner como:   int Mayor(int,int);

Esto sólo indica que en algún lugar del programa se definirá una función "Mayor" que admite dos parámetros de tipo "int" y que devolverá un valor de tipo "int". No es necesario escribir nombres para los parámetros, ya que el prototipo no los usa. En otro lugar del programa habrá una definición completa de la función.

Normalmente, las funciones se declaran como prototipos dentro del programa, o se incluyen estos prototipos desde un archivo externo, (usando la directiva "#include").

La definición de la función se hace más adelante, lo habitual es hacerlo después de la función "main".

Llamada a una función

Para llamar a una función, se escribe su nombre y entre paréntesis los valores que se deseen dar a los argumentos. Existen distintas formas de llamar a una función y estas dependen del tipo función a quien se desea llamar:

Al llamar a una función se puede hacer la llamada por valor o por referencia.  Cuando pasamos  parámetros por valor a  una función,  ésta realiza  una copia de los valores de  éstos en una  zona de la memoria, con lo cual la función trabaja con estas copias de los valores y no hay peligro de que se modifique la variable original con la que llamamos a la función.

NOTA: El caso de paso de valores por referencia será analizado en el siguiente curso de programación.