Modulo De Funciones
1. GENERALIDADES
La utilización de funciones creadas por el programador permite dividir un programa grande en un cierto número de componentes más pequeñas (llamados en ocasiones subprogramas), cada una de las cuales posee un propósito único que lo diferencian de los demás. Por tanto, un programa en C se puede modularizar mediante el uso de las funciones. (C noincluye otras formas de desarrollo modular de programas, como los procedimientos en Pascal.
Hay varias ventajas de desarrollar en forma modular los programas. Por ejemplo, muchos programas requieren acceder repetidamente a un grupo determinado de instrucciones desde varias partes distintas del programa. Las instrucciones repetidas se pueden incluir dentro de una sola función, a la que se puedeacceder cuando sea necesario. Además, se puede transferir un conjunto de datos diferente a la función cada vez que se accede a ella. Por tanto, el uso de funciones evita la necesidad de repetir las mismas instrucciones de forma redundante (como ocurre en los lenguajes de programación lineal).
De igual forma es importante la claridad lógica resultante de la descomposición de un programa envarias funciones concisas, representando de cada función una parte bien definida del problema global. Estos programas son más fáciles de escribir y de depurar, y su estructura lógica es más fácil de entender que la de aquellos programas que carecen de este tipo de estructuras. Esto es especialmente cierto en programas grandes y complicados. La mayoría de los programas en C se modularizan de estamanera, aún cuando no impliquen la ejecución repetida de las mismas tareas. De hecho, la descomposición de un programa en módulos individuales se considera generalmente parte de la buena práctica de la programación.
Cada subprograma se puede separar como una función individual y almacenar en un archivo de librería especial. Si un programa requiere de una determina rutina, se puede añadir lacorrespondiente función de librería al programa durante el proceso de compilación. Por tanto, muchos programas distintos pueden utilizar una misma función. Esto evita la reescritura del código de las funciones (una ventaja de la programación modular, es la REUTILIZACÓN DE CÓDIGO cuando se generan funciones que pueden ser implementadas en diferentes programas). Además favorece la portabilidad, ya quese pueden escribir programas sin prestar atención a las características dependientes del sistema.
En este módulo veremos cómo se definen las funciones y cómo se puede acceder a ellas desde diferentes partes de un programa en C. Veremos también cómo se puede pasar información a una función, trataremos la utilización de prototipos de funciones recomendada por el estándar ANSI (Instituto NacionalAmericano de Estándares), actual. Y finalmente, discutiremos una importante e interesante técnica de programación conocida como recursividad, en la que una función puede acceder a sí misma de forma repetida.
Una función es un segmento de programa que realiza determinadas tareas bien definidas. Todo programa en C consta de una o más funciones. Una de estas funciones se debe llamar main. Laejecución del programa siempre comenzará por las instrucciones contenidas en main. Se puede subordinar funciones adicionales a main, y posiblemente unas a otras. Se debe tener en cuenta que los archivos de cabecera (*.h) no poseen la función main; dado que sus funciones se construyen para ser implementadas en otros programas.
Cuando se accede a una función desde alguna determinada parte delprograma (llamado a una función), se ejecutan las instrucciones de que consta. Se puede acceder a una misma función desde varios lugares distintos del programa. Una vez que se ha completado la ejecución de una función, se devuelve el control al punto desde el que se accedió a ella.
Generalmente, una función procesa la información que le es pasada desde el punto del programa en donde se accede a...
Regístrate para leer el documento completo.