Funciones

749 views

Published on

Introducción a Funciones en C

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
749
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Funciones

  1. 1. Funciones Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Funciones Llamada a funciones ´ Ambito Call stack Roberto Carlos Abreu D´ ıaz January 27, 2010
  2. 2. Funciones Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Funciones Llamada a funciones ´ Ambito Caso de Estudio Call stack Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack
  3. 3. Funciones Funciones Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack Entrada, procesamiento, Salida Se pueden llamar (”ejecutar”) un sin n´mero de veces. u Relativamente independientes del resto del c´digo o Sin´nimos: sub-programas, procedimientos, m´todos, o e funciones, rutinas
  4. 4. Funciones Caso de Estudio Roberto Carlos Abreu D´ıaz Outline Ejemplo de Kernighan y Ritchie Funciones Caso de Estudio Estructura de una Funci´n o Si tenemos que dise˜ar y escribir un programa que n Llamada a funciones ´ Ambito imprima cada l´ ınea de la entrada si esta contiene alg´n u Call stack patr´n de caracteres. o El c´digo ser´ algo as´ o ıa ı: while (haya m´s l´ a ıneas) if (la l´ ınea contiene el patr´n) o impr´ ımela Aunque podamos escribir todo el c´digo en el main(), o separar el c´digo en varias funciones trae consigo sus o ventajas
  5. 5. Funciones Continuaci´n... o Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Ejemplo de Kernighan y Ritchie (2) Estructura de una Funci´n o Llamada a funciones ´ Ambito ”haya m´s l´ a ıneas” es una funci´n que lee datos tipo o Call stack cadena de la entrada ”(if) la l´ ınea contiene el patr´n” es una funci´n que o o busca la ocurrencia de patrones de textos ”impr´ ımela” es ya el printf! ¡Si queremos cambiar el patr´n de b´squeda s´lo o u o tendr´ ıamos que cambiar la funci´n encargada de eso! o
  6. 6. Funciones Estructura de una Funci´n o Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack La lista de par´metros es separada por coma a Si la funci´n no devuelve datos, el tipo de dato es: void o La palabra reservada return se utiliza para devolver el resultado
  7. 7. Funciones Ejemplo! Roberto Carlos Abreu D´ıaz Outline C´digo o Funciones Caso de Estudio Estructura de una int f a c t o r i a l ( int n) Funci´n o Llamada a funciones { ´ Ambito Call stack i f ( n <= 2 ) return n ; int producto = n ; while ( n > 1) p r o d u c t o ∗= −−n ; return producto ; }
  8. 8. Funciones Llamada a funciones Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack ¡Ya lo hemos hecho! printf! Si la funci´n devuelve un resultado . . . la llamada a la o funci´n es una expresi´n v´lida! o o a Ejemplo: factorial(5) + factorial(6)!
  9. 9. ´ Ambito Funciones Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack Las funciones pueden acceder a las variables globales Pero no pueden acceder a las variables de otras variables ¿Por qu´? e
  10. 10. Funciones Call stack Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack

×