C Funciones definidas por el usuario

En este tutorial, aprenderá a crear funciones definidas por el usuario en la programación C con la ayuda de un ejemplo.

Una función es un bloque de código que realiza una tarea específica.

C le permite definir funciones según su necesidad. Estas funciones se conocen como funciones definidas por el usuario. Por ejemplo:

Supongamos que necesita crear un círculo y colorearlo según el radio y el color. Puede crear dos funciones para resolver este problema:

  • createCircle() función
  • color() función

Ejemplo: función definida por el usuario

Aquí hay un ejemplo para sumar dos números enteros. Para realizar esta tarea, hemos creado un archivo addNumbers().

 #include int addNumbers(int a, int b); // function prototype int main() ( int n1,n2,sum; printf("Enters two numbers: "); scanf("%d %d",&n1,&n2); sum = addNumbers(n1, n2); // function call printf("sum = %d",sum); return 0; ) int addNumbers(int a, int b) // function definition ( int result; result = a+b; return result; // return statement ) 

Prototipo de función

Un prototipo de función es simplemente la declaración de una función que especifica el nombre de la función, los parámetros y el tipo de retorno. No contiene cuerpo funcional.

Un prototipo de función proporciona información al compilador de que la función se puede utilizar más tarde en el programa.

Sintaxis del prototipo de función

 returnType functionName (tipo1 argumento1, tipo2 argumento2,…);

En el ejemplo anterior, int addNumbers(int a, int b);es el prototipo de función que proporciona la siguiente información al compilador:

  1. el nombre de la función es addNumbers()
  2. el tipo de retorno de la función es int
  3. dos argumentos de tipo intse pasan a la función

El prototipo de función no es necesario si la función definida por el usuario se define antes que la main()función.

Llamar a una función

El control del programa se transfiere a la función definida por el usuario llamándolo.

Sintaxis de llamada a función

 functionName (argumento1, argumento2,…);

En el ejemplo anterior, la llamada a la función se realiza mediante una addNumbers(n1, n2);declaración dentro de la main()función.

Definición de función

La definición de función contiene el bloque de código para realizar una tarea específica. En nuestro ejemplo, sumando dos números y devolviéndolo.

Sintaxis de la definición de función

 returnType functionName (tipo1 argumento1, tipo2 argumento2,…) (// cuerpo de la función) 

Cuando se llama a una función, el control del programa se transfiere a la definición de la función. Y el compilador comienza a ejecutar los códigos dentro del cuerpo de una función.

Pasar argumentos a una función

En programación, argumento se refiere a la variable pasada a la función. En el ejemplo anterior, se pasan dos variables n1 y n2 durante la llamada a la función.

Los parámetros ayb aceptan los argumentos pasados ​​en la definición de la función. Estos argumentos se denominan parámetros formales de la función.

El tipo de argumentos pasados ​​a una función y los parámetros formales deben coincidir, de lo contrario, el compilador arrojará un error.

Si n1 es de tipo char, a también debería ser de tipo char. Si n2 es de tipo flotante, la variable b también debería ser de tipo flotante.

También se puede llamar a una función sin pasar un argumento.

Declaración de devolución

La declaración de retorno termina la ejecución de una función y devuelve un valor a la función que llama. El control del programa se transfiere a la función de llamada después de la declaración de retorno.

En el ejemplo anterior, el valor de la variable de resultado se devuelve a la función principal. A la variable de suma en la main()función se le asigna este valor.

Sintaxis de la declaración de devolución

 return (expresión); 

Por ejemplo,

return a; retorno (a + b);

El tipo de valor devuelto por la función y el tipo de retorno especificado en el prototipo de función y la definición de función deben coincidir.

Visite esta página para obtener más información sobre cómo pasar argumentos y devolver valor de una función.

Articulos interesantes...