2.
La mayoría de los programas de cómputo resuelven
problemas reales que son mucho mas grandes que
los problemas que presentamos en este tema.
En esta presentación describimos las características
del lenguaje C que facilitan el diseño, la
implementación, la operación y el mantenimiento de
programas grandes .
Introducción
3.
Permite a los usuarios dividir un programa en
módulos.
Todas las variables que se definen en una función
son variables locales, es decir se conocen solo en la
función en la que se definen. La mayoría de las
funciones tiene una lista de parámetros.
¿Qué es una función?
4.
Construir a partir de piezas pequeñas o módulos, los
cuales son más manejables que el programa original.
Hace que el desarrollo de programas sea más
manejable.
Presentamos esta estrategia como un medio efectivo
para resolver problemas complejos, dividiéndolos en
componentes más sencillos que interactúan entre sí.
¿En que consiste la técnica
divide y vencerás?
5.
A los módulos en C se les llama funciones.
¿Qué otro nombre reciben
las funciones?
6.
La reutilización de software: utilizar
funciones existentes como bloques de
construcción para crear nuevos
programas.
¿Que relación existe entre las
funciones y la reutilización de código?
7.
¿Cuáles son las funciones de la
biblioteca estándar (redefinidas)?
Son funciones “pre-empacadas”. Aunque las
funciones de la biblioteca estándar técnicamente
no son parte del lenguaje C, invariablemente son
proporcionadas con los sistemas de C.
Ejemplo:
printf( “%.2f”, sqrt( c1 + d * f ) );
8.
El programador puede escribir funciones para
definir tareas específicas que se podrían
utilizar en muchos puntos del programa.
Las instrucciones reales que definen a las
funciones se escriben solamente una vez, y
están ocultas a las demás funciones.
¿En que consisten las funciones
predefinidas por el programador?
9.
Cada programa que presentamos consiste en una
función llamada main que a su vez llama a
funciones de la biblioteca estándar para llevar a
cabo sus tareas.
A menudo main se implementa como un grupo de
llamadas a funciones que realizan el grueso del
trabajo del programa.
Función main
10.
El formato de una definición de función es:
tipo-valor-retorno nombre-función( lista-
parámetros )
{
definiciones
instrucciones
}
¿Cuál es la estructura
general de una función?
11.
“Void” a la izquierda del nombre de la función
mostrarMensaje es el tipo de valor de retorno
de ésta. Este tipo de valor indica que
mostrarMensaje no devolverá (regresará) datos a la
función que la
llamó cuando complete su tarea. Ejemplo:
void mostrarMensaje( string nombreCurso )
¿Para que se utiliza el tipo
void?
12.
Un parámetro es una variable que puede pasar su
valor a un procedimiento desde el principal o desde
otro procedimiento.
Existen ocasiones en que es necesario mandar al
procedimiento ciertos valores para que los use en
algún proceso. Estos valores se llaman parámetros.
¿Qué es un parámetro?
13.
La instrucción return se coloca al final de toda
función main
Ejemplo:
return 0; /* indica terminación exitosa */
return nombreCurso; // devuelve el nombreCurso del
objeto
¿Qué es y para que se
utiliza el return?
14.
Indica que la función devuelve un valor entero,
que la función requiere tres parámetros enteros para
realizar su tarea. Comprueba que las llamadas
contengan el número y tipos de argumentos
correctos, y que los tipos estén en el orden correcto.
Asegura que el valor devuelto por la función se
pueda utilizar de manera correcta en la expresión
que llamó a la función.
¿Qué es el prototipo de la
función?
15.
Las funciones, para ser ejecutadas, han de
ser llamadas o invocadas.
La llamada a una funcion se realiza desde la
función main( ), también puede ser desde otra
función.
La función se ejecuta y cuando termina regresa el
control main( ), o a la función que la llamo.
¿A que se refiere la
llamada función?
16.
Cuando se realiza una llamada a la función, los
"valores" pasados se denominan argumentos.
A veces se utilizan también las
expresiones argumentos formales, para los
parámetros y argumentos actuales para los valores
pasados.
¿Qué son los argumentos?