Exposicion Funciones Lp II

download Exposicion Funciones Lp II

of 19

Transcript of Exposicion Funciones Lp II

  • 7/25/2019 Exposicion Funciones Lp II

    1/19

  • 7/25/2019 Exposicion Funciones Lp II

    2/19

  • 7/25/2019 Exposicion Funciones Lp II

    3/19

    Declaracin de funciones

    Antes de empezar a util izar una funcin debemos declararla. La declaracfuncin se conoce tambin como prototipo de la funcin. En el prototfuncin se tienen que especificar los parmetros de la funcin, as comodato que devuelve. Los prototipos de las funciones que se util izan en un pincluyen generalmente en la cabecera del programa y presentan la siguien

    tipo_de_retorno nombre_de_la_funcin(lista_de_parmetros);

    o

    En el prototipo de una funcin no se especifican las sentencias que forman misma, sino sus caractersticas. Por ejemplo:

    int cubo(int numero);

  • 7/25/2019 Exposicion Funciones Lp II

    4/19

    Definicin de funciones

    Tras declarar una funcin, el siguiente paso es implementarla. Generalmentpaso se conoce como definicin. Es precisamente en la definicin de una fdonde se especifican las instrucciones que forman parte de la misma y quepara llevara cabo la tarea especfica de la funcin. La definicin de una fuconsta de dos partes, el encabezado y el cuerpo de la funcin. En el encabla funcin, al igual que en el prototipo de la misma, se tienen que especificaparmetros de la funcin, si los utiliza y el tipo de datos que devuelve, mientcuerpo se compone de las instrucciones necesarias para realizar la tarea pa

    se crea la funcin. La sintaxis de la definicin de una funcin es la siguientetipo_de_retorno nombre_de_la_funcin(lista_de_parmetros)

    {

    sentencias;

    }

  • 7/25/2019 Exposicion Funciones Lp II

    5/19

    Devolucin de valores Una funcin en C slo puede devolver un valor. Para devolver dicho valor

    palabra reservada Return cuya sintaxis es la siguiente:

    return ;

    Donde puede ser cualquier tipo de dato salvo un array o una fun

    Adems, el valor de la expresin debe coincidir con el tipo de dato declaprototipo de la funcin.

  • 7/25/2019 Exposicion Funciones Lp II

    6/19

    Acceso a una funcin

    Para que una funcin realice la tarea para la cual fuedebemos acceder o llamar a la misma. Cuando se llamfuncin dentro de una expresin, el control del progrpasa a sta y slo regresa a la siguiente expresin de larealizado la llamada cuando encuentra una instruccinen su defecto, la llave de cierre al final de la funcin

  • 7/25/2019 Exposicion Funciones Lp II

    7/19

    mbito y clases de almacenami

    Como hemos visto en unidades anteriores, en C, las variables se pueden cacuerdo a su tipo de dato. Por ejemplo, una variable puede ser de tipo ede tipo carcter (char). Sin embargo, las variables tambin pueden claacuerdo a su mbito, es decir, la parte del programa en la que lareconocida. De acuerdo con su mbito, las variables pueden ser localesPor otro lado, existen los modificadores de tipo o clases de almacenampermiten modificar el mbito y la permanencia de una variable de

    programa. Existen cuatro modificadores de tipo, automtico, externo,registro, que se corresponden con las palabras reservadas auto, exteregister, respectivamente.

  • 7/25/2019 Exposicion Funciones Lp II

    8/19

    Variables locales Cuando declaramos variables dentro de la funcin principal del programa,

    dentro de la funcin main, estn nicamente asociadas a esta funcin, en palabras, son variables locales de la funcin main y no se puede acceder atravs de ninguna otra funcin.

  • 7/25/2019 Exposicion Funciones Lp II

    9/19

    Variables globales A diferencia de las variables locales cuyo mbito estaba confinado a la fun

    donde estaban declaradas, el mbito de las variables globales se extiendepunto en el que se definen hasta el final del programa. En otras palabras, si una variable al principio del programa, cualquier funcin que forme parte dpodr utilizarla simplemente haciendo uso de su nombre.

  • 7/25/2019 Exposicion Funciones Lp II

    10/19

    Variables estticas Otro tipo de almacenamiento son las variables estticas identificadas por la

    reservada static. Las variables estticas pueden ser tanto locales como globvariable esttica local, al igual que una variable automtica, est nicameasociada a la funcin en la que se declara con la salvedad de que su existpermanente.

  • 7/25/2019 Exposicion Funciones Lp II

    11/19

    Variables de registro Cuando declaramos una variable como variable de registro, le estamos dic

    compilador que queremos que la variable se almacene en un lugar de rpigeneralmente en los registros de la unidad central de procesamiento del orPara declarar una variable como variable de registro, debemos colocar la preservada Register antes de la declaracin de la variable. Veamos algunos

    register int contador:

    register char a;

  • 7/25/2019 Exposicion Funciones Lp II

    12/19

    Paso de argumentos y punter

    En C todos los argumentos que se pasan a una funcin se pasan por valor. Epalabras, se pasa una copia del valor del argumento y no el argumento eneste procedimiento se conoce en algunas ocasiones como paso por copiauna copia del argumento original a la funcin, cualquier modificacin que sobre esta copia no tendr efecto sobre el argumento original utilizado en lde la funcin. Se puede considerar un argumento pasado por valor como uvariable local de la funcin a la que se ha pasado, de tal modo que los cam

    se realicen sobre sta tendrn efecto slo dentro de la funcin.

  • 7/25/2019 Exposicion Funciones Lp II

    13/19

    Recursividad por ejemplo una estructura, sera conveniente pasarla por referencia, ya qu

    hacemos por valor, se tiene que realizar una copia de la misma y colocarlalo que implica consumo de tiempo y espacio. Las funciones en C pueden serecursivas, en otras palabras, pueden llamarse a s mismas directa o indirectrecursividad directa es el proceso mediante el que una funcin se llama a sdesde el propio cuerpo de la funcin, mientras que la recursividad indirectams de una funcin. Un proceso recursivo tiene que tener una condicin definalizacin, ya que de lo contrario podra continuar infinitamente

  • 7/25/2019 Exposicion Funciones Lp II

    14/19

  • 7/25/2019 Exposicion Funciones Lp II

    15/19

    Entrada/salida estndar Hasta ahora hemos utilizado la funcin Printf para escribir datos en la salida

    del ordenador (consola). Sin embargo, no es la nica funcin para la salidaen C. De la misma manera, al igual que existen funciones para la salida de existen funciones para la entrada de los mismos, entre las que se encuentrascanf.

  • 7/25/2019 Exposicion Funciones Lp II

    16/19

    La funcin printf

    La funcin Printf bsicamente imprime una cadena de caracteres sobre la del ordenador. Tanto esta funcin como otras funciones de entrada/salida definidas en la biblioteca stdio. Por esta razn, cada vez que deseamos hacla misma tenemos que incluir el fichero stdio.h mediante la directiva deprecompilacin #include.La sintaxis de la funcin printf es la siguie

    printf("cadena de control", lista de argumentos);

  • 7/25/2019 Exposicion Funciones Lp II

    17/19

    La funcin scanf

    Un programa puede recibir datos a travs de diversaspor ejemplo el teclado o ficheros almacenados en discoapartado, vamos a considerar la entrada estndar porLa funcin de entrada ms utilizada es la funcin scanes verstil y permite una entrada con formato.

  • 7/25/2019 Exposicion Funciones Lp II

    18/19

    Otras funciones de entrada/sa

    Existen otras funciones de entrada/salida estndar definidas en elcabecera stdio.h. Entre estas funciones estn las funciones getchar yfuncin getchar nos permite leer caracteres uno a uno. Esta funcin nargumentos y simplemente devuelve el carcter ledo por la entrada eforma de entero sin signo. El prototipo de esta funcin es:

    int getchar (void)

  • 7/25/2019 Exposicion Funciones Lp II

    19/19