Está en la página 1de 5

MARTN RAMREZ PINTOR 14/MAYO/2014

CONALEP LIC. FRANCISCO MEDINA ASCENCIO MEXICANO-ITALIANO



PROGRAMACIN DE FUNCIONES
Como vimos anteriormente C tiene como bloque bsico la funcin main() , tambin
hemos visto la sentencia printf() que es otra funcin, y de igual forma hay muchas
ms funciones predefinidas, pero nosotros mismos tambin podemos definir
nuestras propias funciones. De hecho, es fundamental hacerlo.
Es un bloque de instrucciones que realiza tareas bien definidas. Todo programa en
C consta de una o ms funciones. La ejecucin de un programa en C siempre
comienza por la funcin. Cuando se ejecuta una funcin el control pasa al punto
donde esta inicia. Una vez finalizada su ejecucin, se devuelve el control al punto
desde el que se hizo la llamada a la funcin.
Son un grupo de sentencias bajo el mismo nombre que realizan una tarea
especfica.

ESTRUCTURA DE UNA FUNCION
De forma similar que las variables las funciones tambin deben ser declaradas con
la siguiente forma predefinida:
tipoDatoRetorno nombreFuncion (lista Parametros);
DEFINICIN DE LA FUNCIN: La definicin de la funcin se hace despus de
cerrar la llave de main. Esta formado por las siguientes partes:
a) Encabezado de la funcin. Es igual al prototipo pero no termina con ;
b) Cuerpo de la funcin. Entre llaves se declaran las variables locales y luego se
escriben las instrucciones. El cuerpo de la funcin termina con la sentencia
return() que marca el final de la funcin. Slo se puede incluir una expresin
(variable u operacin) en la sentencia return.

Nombre de la funcin
El nombre que se les da a las funciones, debe ser un identificador vlido, es decir,
- Debe comenzar con una letra o subrayado (_).
MARTN RAMREZ PINTOR 14/MAYO/2014
CONALEP LIC. FRANCISCO MEDINA ASCENCIO MEXICANO-ITALIANO
- Despus de la primera letra pueden aparecer otras letras, dgitos y caracteres.
- No debe contener espacios en blanco.
LLAMADA A LA FUNCIN.
Es la ejecucin de la Funcin. La funcin se realiza en el momento en que desde
el programa principal se hace referencia a su nombre.
RESULTADO DE UNA FUNCIN
Si la funcin debe generar lo retornar usando la sentencia return dentro del
cuerpo de la misma:
Return(variable o expresin que se debe retornar);
Hay funciones que no retornan valores, en este caso se puede usar return pero sin
mencionar una expresin:
Return;
PROTOTIPO DE UNA FUNCIN.
A excepcin de la funcin main(), en el mdulo del programa debe aparecer la
declaracin de las funciones que se utilicen en dicho mdulo. Esta declaracin
recibe el nombre de PROTOTIPO.
Tiene la sintaxis:
tipo nombre(parmetro 1, parmetro 2, ...parmetro N );
donde :
Tipo: es el tipo de valor devuelto por la funcin. Los procedimientos son tipo void.
Nombre: es el nombre de la funcin
Parmetros: conjunto de argumentos, separados por comas y encerrados entre
parntesis. Los parmetros son opcionales, en caso de que no se especifiquen,
enseguida del nombre de la funcin se escribe un par de parntesis vacos.
#include <iostream.h>
void potencia (int x, int y, int& z );
void main()
{
MARTN RAMREZ PINTOR 14/MAYO/2014
CONALEP LIC. FRANCISCO MEDINA ASCENCIO MEXICANO-ITALIANO
...
}
void potencia( int x, int y, int& z)
{
.
}
Lista de parmetros:
Es la lista de declaracin de los parmetros que son pasados a la funcin. stos
se separan por comas. Debemos tener en cuenta que pueden existir funciones
que no utilicen parmetros.
Los parmetros permiten la comunicacin de la funcin con el resto del programa
mediante transferencia de datos.
Paso de parmetros por valor
- Cuando se llama a la funcin, se pasa solo el valor de la variable.
- Este mtodo tambin se llama paso por copia.
- El compilador hace una copia de los parmetros. Esto implica que cualquier
modificacin en el valor de los parmetros no se mantiene cuando termina la
funcin.
- Utilizaremos ste mtodo cuando no necesitemos que se modifiquen los
parmetros con los que se llama.
Paso de parmetros por referencia
- Tambin se llama paso por direccin.
- Cuando se llama a la funcin, se pasa la direccin de memoria donde se
encuentra almacenada la variable parmetro.
- El compilador no hace copia, no reserva memoria para los parmetros.
- Usaremos ste mtodo cuando necesitamos que la funcin modifique el valor de
los parmetros y que devuelva el valor modificado.
Para pasar un parmetro por referencia, hay que poner el operador de direccin &
detrs del tipo del parmetro.
MARTN RAMREZ PINTOR 14/MAYO/2014
CONALEP LIC. FRANCISCO MEDINA ASCENCIO MEXICANO-ITALIANO
void cubo (int & a)
{ . }
EJEMPLO:
void main()
{
int m;
m = area_rectangulo( 2 , 3 );
cout << m ;
int lado1 = 2, lado2 = 6 ;
m = area_rectangulo( lado1 , lado2 );
cout << m;
int b = 10, e = 4, r= 0;
potencia (b, e, r);
cout << r;
}
int area_rectangulo (int a, int b)
{
int aux;
aux = a*b;
a=0;
b=0;
return aux;
}
void potencia( int x, int y, int& z)
{
MARTN RAMREZ PINTOR 14/MAYO/2014
CONALEP LIC. FRANCISCO MEDINA ASCENCIO MEXICANO-ITALIANO
z = 1;
for ( int i=1; i<= y ; i++ )
z = z * x ;
}
Parmetros por valor: a, b, x, y Parmetros por referencia: z

También podría gustarte