sábado, 30 de septiembre de 2017

FUNCIONES

El código de un programa escrito en C se divide en funciones. Aunque similares a los métodos de Java, las funciones no están asignadas ni a una clase ni a un objeto. Una función en C se distingue sólo por su nombre. Dos funciones con igual nombre y con diferente número y tipo de parámetros se considera una definición múltiple, y por tanto un error.
Las funciones suelen encapsular una operación más o menos compleja de la que se deriva un resultado. Para ejecutar esta operación, las funciones pueden precisar la invocación de otras funciones (o incluso de ellas mismas como es el caso de las funciones recursivas).
Las funciones en un programa son entidades que dado un conjunto de datos (los parámetros), se les encarga realizar una tarea muy concreta y se espera hasta obtener el resultado. Lo idóneo es dividir tareas complejas en porciones más simples que se implementan como funciones. La división y agrupación de tareas en funciones es uno de los aspectos más importantes en el diseño de un programa.

1. Definición de funciones

Las funciones en C tienen el siguiente formato:

2. Paso de parámetros a una función

Los parámetros son variables locales a los que se les asigna un valor antes de comenzar la ejecución del cuerpo de una función. Su ámbito de validez, por tanto, es el propio cuerpo de la función. El mecanismo de paso de parámetros a las funciones es fundamental para comprender el comportamiento de los programas en C.
Considera el siguiente programa:

#include <stdio.h>
int suma(int a, int b);
int main(void)
{
//Declaración de variables del programa principal
int n1, n2, resu;

//Leemos dos números
printf ("Dame dos numeros\n");
scanf("%d%d",&n1, &n2);

//Calculamos su suma llamando a una función:
resu=suma(n1,n2);
printf("La suma de %d y %d es %d", n1, n2, resu);
return (0);
}

int suma (int a, int b)
{
int r;
r=a+b;
return r;
}

2 comentarios: