Diferentes tipos de función

Diferentes tipos de función
Una función es un código para lograr una determinada operación. Tiene un nombre para su identificación. Aquí no estamos interesados ​​en definir la función. Aquí discutimos diferentes tipos de funciones y su aplicación.

Formas de definir una función

Hay cuatro tipos de programas disponibles en el idioma C. Ellos son:

1. No toma nada, no devuelve nada.

2. Toma algo, no devuelve nada.

3. No toma nada, devuelve algo.

4. Toma algo, devuelve algo.

1. No toma nada, no devuelve nada

Programación Ejemplo 1

#incluir
vacío principal()

nulo add (nulo);
agregar ();

nulo add ()

int a, b, c;
printf ("Ingrese dos números");
scanf (" %d %d", & a, & b);
c = a + b;
printf ("suma es = %d", c);

Producción

Explicación

Siempre que deseamos compilar un programa, el compilador debe conocer el significado de cada palabra escrita en un programa, lo que significa que debe declarar cada función o variable en el programa. Para esta función, se requiere la declaración. En la declaración de funciones, escribimos 3 cosas

  1. Tipo de retorno
  2. Nombre de FM
  3. Argumento

Pero en el caso de una función predefinida, se escribe una declaración en el archivo de encabezado. Por ejemplo: clrscr () - -> La declaración se realiza en el archivo y la función se define en el archivo de la biblioteca. Turbo C ++ 3.0 El compilador declara automáticamente la función definida por el usuario. Pero debemos declarar una función. Solo escribimos el nombre y el parámetro aprobado en el argumento en la función de llamadas.

2. Toma algo, no devuelve nada

Programación Ejemplo 2

#incluir
void add (int, int); // Declaración de funciones a nivel mundial
vacío principal()

int x, y;
void add (int, int); // Declaración de funciones localmente
printf ("Ingrese 2 números");
scanf (" %d %d", & x, & y); // Argumentos reales
agregar (x, y);

void add (int x, int y) // argumentos formales

int c;
c = x+y;
printf ("suma es %d", c);

Producción

Explicación

Si queremos agregar los dos valores de dos variables que se declaran dentro del main () y agregar esto en un nombre de función diferente adds (), usamos el método Takes algo devuelve nada. En este caso, el valor de x e y se pasa a la función Agregar cuando add () está llamando a la función principal. Para esto, se llama llamada por valor.

Cada vez que pasamos un valor como argumento a una función de llamadas, entonces estos argumentos se denominan argumento real.

Y en una definición de función, dentro de la paréntesis de una función, declaramos la variable que recibirá el valor de la variable aprobada por la función de llamada, que se denomina argumento formal.

El nombre del argumento real y la variable de argumento formal pueden ser el mismo porque el compilador no confunde en este caso; Sabe que la variable x, y que se declara dentro de Main () y x, y declaradas en add () son variables diferentes.

En la función de llamadas, solo pasamos el valor de las variables que se declaran dentro de Main (). Para esto, escribimos add (x, y);

3. No toma nada, devuelve algo

Programación Ejemplo 3

#incluir
int add (nulo);
vacío principal ()

int s;
s = add ();
printf ("suma es %d", s);

int add ()

int a, b, c;
printf ("Ingrese dos números");
scanf (" %d %d", & a, & b);
c = a+b;
regreso c;

Producción

Explicación

No toma nada significa, cuando incluso Main () llame a una función para agregar (), eso significa que no toma ningún argumento. Significa que add () tome el valor de las variables del usuario y realice la adición.

Devolver algo significa agregar (); Aquí, devuelva el resultado agregado al main () para usar el retorno de la palabra clave. Cuando agregue () devuelva el valor, este valor debe mantenerse en una variable de tipo de datos int tuya que se declara en main (). Porque aquí el tipo de retorno es int. Eso es medio s = add () se reemplaza por, s = valor de retorno.

Para esto, en la definición de función de add (), aquí tenemos que mencionar el tipo de retorno de add (), aquí está int. En el caso de una declaración, devolvemos solo un valor. Entonces, return (a, b, c)-> está mal. Significa que solo devuelve el valor de C porque está escrito al menos dentro del paréntesis.

Cuando cualquier función devuelve cualquier valor, entonces debe entenderse que el control también regresa a la función de llamada.

Si escribimos algún código después de la declaración de devolución, ese código en particular no ha sido ningún efecto en el programa a medida que el control cambia a la función de llamada.

Cualquier función no puede acceder a la variable declarada por la otra función. Porque cualquier variable que se declare dentro de una función se trata como una variable local.

Entonces, en Main (), tenemos que imprimir el valor de S en lugar de C porque C es la variable que se declara dentro de Add ().

4. Toma algo, devuelve algo

Programación Ejemplo 4

#incluir
int add (int, int);
vacío principal ()

int s, x, y;
printf ("Ingrese 2 números");
scanf (" %d %d", & x, & y);
s = agregar (x, y);
printf ("suma es %d", s);

int add (int a, int b)

int c;
c = a+b;
regreso c;

Producción

Explicación

Toma algo devuelve nada el programa es lo mismo que Take Nothing Devuelve algo; La única diferencia es que, como lo es por las tomas, algo está en la naturaleza, por lo que el valor de dos números debe aprobarse en la función de llamadas.

Eso significa que el usuario toma el valor del teclado utilizado por Main (). Ese valor se pasa a la adición ().

Entonces, está en el tipo de llamado por ejemplo de valor. De lo contrario, el procedimiento de devolución es el mismo que no toma nada, devuelve algo procedimiento.

Conclusión

Aprendiendo sobre diferentes tipos de funciones en C, hemos concluido que cada tipo de función ofrece el mismo resultado. Pero cada uno de ellos tiene un mecanismo diferente. Cada uno de ellos es necesario de acuerdo con el requisito del programa. Entonces tenemos que conocer cada tipo de función.