Introducción

Las funciones, procedimientos o métodos permiten ahorrar código, pues hacen que acciones comunes sean agrupadas dentro de un mismo fragmento de código.

Una función es algo que existe dentro de un programa, recibe parámetros, los procesa y (a veces) devuelve un resultado.

Veamos una introducción a las funciones en C.

Funciones predefinidas

C ya tiene funciones o métodos predefinidos. Por ejemplo, sqrt y pow son funciones matemáticas que ya vienen por defecto al incluir la librería.

También lo son printf y scanf; funciones que se encargan de leer y escribir datos.

Función main

Para que un programa del lenguaje C sea ejecutado, se necesita una función main.

Esta función es la función principal, es el punto de entrada del programa.

Cuando el programa se ejecuta, esta función es llamada y se le pasan los argumentos con los que el programa fue llamado en caso de que existan.

Definición de una función

Para definir una función en nuestros programas debemos saber la sintaxis para declararlas. Dicha sintaxis es la siguiente:

tipoDeDatoQueRegresa nombreDeLaFuncion(tipoDeDatoDelPrimerArgumento nombreDelPrimerArgumento){}

Sé que se ve muy complicado, pero no lo es. Por ejemplo, la función para sacar la raíz cuadrada (sqrt) es esta:

See the gist on github.

Con esa función podemos sacar los siguientes datos:

  • Tipo de dato que regresa: double
  • Nombre: sqrt
  • Tipo de dato del primer argumento: double
  • Nombre del primer argumento: numero

Veamos ahora la función pow:

See the gist on github.

Es casi como sqrt pero esta tiene dos parámetros, ambos de tipo double pero uno es x y otro es y.

Las funciones también pueden devolver nada. Y ese tipo de dato es llamado void. Una función que no regresa nada podría quedar así:

See the gist on github.

Igualmente una función puede no recibir parámetros o argumentos:

See the gist on github.

 

Llamada a una función

Para llamar a una función ponemos su nombre y le pasamos los argumentos entre paréntesis. Si la función no recibe argumentos, dejamos los paréntesis vacíos.

Si la función devuelve algo podemos usar ese resultado y alojarlo en una variable o usarlo para llamar a otra función. Aunque devuelva algo, no es obligatorio asignarle a algo su resultado.

Por ejemplo, la función printf devuelve un entero indicando cuántos caracteres imprimió, pero la mayoría de veces eso no importa; simplemente llamamos a la función e ignoramos su resultado.

Para llamar a una función sin argumentos hacemos esto:

nada();

Suponiendo que la función “nada” existe, sería llamada como se ve arriba.

Ejemplo de una función hecha por nosotros

Con lo explicado arriba podemos crear nuestras propias funciones.

Por ejemplo, la función saludo que recibe un arreglo de caracteres (un string) indicando el nombre, e imprime “Hola” seguido del nombre.

Quedaría así:

See the gist on github.

En un programa completo en donde lo llamamos se ve de la siguiente manera:

See the gist on github.

Es importante ver que definimos hasta arriba la firma de nuestra función (sin llaves ni cuerpo), y más abajo definimos el cuerpo.

De esta forma nosotros llamamos a la función y le pasamos una cadena.

La salida será: Hola Luis

Función hecha por nosotros con argumentos

Ahora hagamos una función que sume dos números y devuelva el resultado. La definición es la siguiente:

See the gist on github.

En este caso la función sí devuelve algo y es un entero. Además, recibe dos argumentos (ambos enteros). Devuelve la suma de los mismos.

En este caso estamos devolviendo el resultado y ya, pero podría ser más expresivo:

See the gist on github.

Para implementarla en un código completo podemos hacer esto:

See the gist on github.

La salida es: El resultado de la suma es 60

Funciones con valores de retorno: suma

Así es como podemos llamar y crear funciones a nuestro gusto en C.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

Entradas recientes

Plugin ESC POS – Actualización 3.4.0: imprimir HTML

El plugin para imprimir en impresoras térmicas alcanza hoy su versión 3.4.0 agregando soporte para…

1 día hace

JavaScript (lado del cliente): leer pixeles de imagen

En ocasiones es necesario leer los pixeles y colores de una imagen con JavaScript del…

1 semana hace

PHP y JavaScript: llenar select con AJAX

Siguiendo con los tutoriales de listas desplegables o select con JavaScript, vamos a ver cómo…

1 semana hace

Imprimir PDF generado con HTML

Hoy vamos a ver programar la impresión de un PDF generado a partir de HTML…

1 semana hace

JavaScript: llenar select con arreglo

En este tutorial básico de JavaScript con HTML vamos a ver cómo llenar una lista…

2 semanas hace

Imprimir PDF a partir de URL

En este artículo se presenta una guía para imprimir un PDF a partir de una…

2 semanas hace

Esta web usa cookies.