Las funciones son conjuntos de instrucciones que reciben entradas, realizan algunas operaciones y devuelven resultados. Una función solo funciona cuando se la llama. En lugar de escribir el mismo código repetidamente para diferentes entradas, podemos llamar a la función en lugar de escribir el mismo código una y otra vez. Las funciones aceptan parámetros, que son datos. Una función realiza una determinada acción y es importante para la reutilización del código. Dentro de una función hay una serie de instrucciones de programación delimitadas por {}.
Ejemplo:
int sum(int a, int b);

Declaraciones de trabajo
Las declaraciones de función le dicen al compilador cuántos parámetros necesita una función, qué tipo de parámetros devuelve y qué tipo de datos necesita. Las declaraciones de funciones no tienen que contener nombres de parámetros, pero las definiciones sí.
Sintaxis:
return_type name_of_the_function (parameters);
La declaración de la función para la suma de dos números se muestra a continuación:
int sum(int var1, int var2);
El nombre del parámetro no es necesario cuando se declaran funciones. También podemos declarar la función anterior sin usar el nombre de las variables de datos.
int sum(int, int);

Definición de función
Una definición de función consiste en un encabezado de función y un texto de función.
return_type function_name (parameters) { //body of the function }
- tipo_retorno: La función siempre comienza con un tipo de retorno de la función. Pero si no hay un valor de retorno, la palabra clave void se usa como el tipo de retorno de la función.
- Nombre de la función: Nombre de la función que debe ser único.
- parámetros: Valores pasados durante la llamada a la función.
Llamada de función
Para llamar a una función, los parámetros se pasan junto con el nombre de la función. En el siguiente ejemplo, se llama a la primera función de suma y se pasa 10,30 a la función de suma. Después de la llamada a la función, devuelve la suma de a y b y el control también vuelve a la función principal del programa.

Funcionamiento de la función
C
|
Tipos de características

Tipos de funciones en C
1. Función definida por el usuario
Las funciones creadas por el programador se conocen como funciones definidas por el usuario o “funciones personalizadas”. Las funciones definidas por el usuario se pueden mejorar y adaptar a las necesidades del programador. Cada vez que escribimos una función que es específica de un caso y no está definida en un archivo de encabezado, tenemos que declarar y definir nuestras propias funciones de acuerdo con la sintaxis.
Beneficios de las funciones definidas por el usuario
- Las funciones modificables se pueden ajustar según sea necesario.
- El código de estas funciones es reutilizable en otros programas.
- Estas características son fáciles de entender, depurar y mantener.
Ejemplo:
C
|
2. Función de biblioteca
A función de biblioteca también se llama un. nombrada “función incorporada”. Ya existe un paquete compilador que contiene estas funciones, cada una de las cuales tiene un significado específico y está incluida en el paquete. Las funciones integradas tienen la ventaja de que se pueden usar de inmediato sin definirlas, mientras que las funciones definidas por el usuario deben declararse y definirse antes de usarse.
Por ejemplo:
pow(), sqrt(), strcmp(), strcpy() etc.
Ventajas de las funciones de la biblioteca C
- Las funciones de la biblioteca C son fáciles de usar y están optimizadas para un mejor rendimiento.
- Las funciones de la biblioteca C ahorran mucho tiempo, es decir, tiempo de desarrollo de funciones.
- Las funciones de la biblioteca C son útiles porque siempre funcionan.
Ejemplo:
C
|
The Square root of 49.00 = 7.00
Pasar parámetros a funciones
El valor de la función que se pasa cuando se llama a la función se conoce como Parámetros reales. En el programa a continuación, 10 y 30 se conocen como parámetros reales.
Parámetros formales son la variable y el tipo de datos como se indica en la declaración de la función. En el siguiente programa, a y b se conocen como parámetros formales.

1. Transmitir valor: Pasar parámetros en este método copia valores de parámetros reales a parámetros formales de función. Como resultado, los cambios realizados en las funciones no se reflejarán en los parámetros de la persona que llama.
A continuación se muestra el programa C para mostrar el valor de paso:
C
|
Before swap Value of var1 and var2 is: 3, 2 After swap Value of var1 and var2 is: 3, 2
2. Pasar por Referencia: Los parámetros reales de la persona que llama y los parámetros reales de la función se refieren a las mismas ubicaciones, por lo que cualquier cambio realizado dentro de la función se refleja en los parámetros reales de la persona que llama.
A continuación se muestra el programa C para mostrar la referencia de paso:
C
|
Before swap Value of var1 and var2 is: 3, 2 After swap Value of var1 and var2 is: 2, 3
Argumentos de función y valores devueltos
En el lenguaje de programación C, las funciones se pueden llamar con o sin argumentos y pueden devolver valores. Pueden o no devolver valores a las funciones de llamada. Para obtener más información sobre los argumentos de función y los valores devueltos, consulte el artículo – Argumentos de función y valores devueltos en C.
- Función con argumentos y sin valor de retorno
- Función sin argumentos y con valor de retorno
- Función con argumento y sin valor de retorno
- Función con argumentos y con valor de retorno