Diferencia entre prototipo de función y definición de función en C

Diferencia clave - Prototipo de función vs Definición de función en C
 

Una función es un grupo de sentencias utilizadas para realizar una tarea específica. En la programación en C, la ejecución se inicia desde main (). Es una función. En lugar de escribir todas las declaraciones en el mismo programa, se puede dividir en múltiples funciones. Cada función realizará diferentes funcionalidades. La función prototipo le dice al compilador sobre el nombre de la función, los tipos de retorno y los parámetros. También se conoce como una declaración de función. Cada función tiene un nombre particular para identificarla. Las declaraciones de funciones están escritas dentro de un par de llaves. Las funciones pueden devolver un valor. Hay algunas funciones que no devuelven un valor. Los datos se pasan a la función utilizando la lista de parámetros. La definición de la función tiene la funcionalidad real realizada por la función. En programación en C, hay función prototipo y definición de función. los diferencia clave entre la función prototipo y la definición de la función es que la La función prototipo solo contiene la declaración de la función, mientras que la definición de la función contiene la implementación real de la función.. La definición de la función tiene las variables locales y las declaraciones que determinan lo que hace la función.

CONTENIDO

1. Resumen y diferencia clave
2. ¿Qué es la función de prototipo en C
3. ¿Qué es la definición de función en C?
4. Similitudes entre la función de prototipo y la definición de función en C
5. Comparación lado a lado: Prototipo de función vs Definición de función en C en forma tabular
6. Resumen

¿Qué es la función de prototipo en C?

Función Prototipo proporciona la declaración de función. Especifica el nombre de la función, los tipos de retorno, los parámetros. Los tipos de retorno son el tipo de datos que devuelve la función. Cuando una función devuelve un entero, el tipo de retorno es int. Cuando una función está devolviendo un valor flotante, el tipo de retorno es un valor flotante. Si la función no está devolviendo ningún valor, es una función nula. El nombre de la función se utiliza para identificarlo. Las palabras clave C no se pueden utilizar como nombres de funciones. Los datos se pasan a la función utilizando parámetros. La función prototipo no contiene la implementación real de la función. La función prototipo tiene la siguiente sintaxis..

(lista de parámetros);

Si hay una función para calcular el máximo de dos números, la declaración se puede escribir como int max (int num1, int num2); El valor máximo se debe encontrar en num1 y num2. Esos son enteros, y se pasan a la función. El tipo de retorno, al principio, también es int. Por lo tanto, la función devuelve un valor entero. No es necesario escribir los nombres de los parámetros en la función prototipo. Pero es necesario escribir los tipos de datos. Por lo tanto, int max (int, int); También es una función válida de prototipo. Si hay dos enteros como num1, num2, num3 y el prototipo se escribe como int max (int num1, int num2, num3); es invalido El num1, num2 tienen los tipos de datos, pero num3 no tiene un tipo de datos. Por lo tanto, es inválido.

Consulte el siguiente programa.

#incluir

int CarMax (int x, int y);

int main ()

int p = 10;

int q = 20;

respuesta int

respuesta = calMax (p, q);

printf ("El valor máximo es% d \ n", respuesta);

devuelve 0;

int calMax (int p, int q)

valor int

si (p> q)

valor = p;

else

valor = q;

valor de retorno;

De acuerdo con lo anterior, la segunda declaración muestra la función prototipo. No tiene la implementación. La implementación actual es posterior al programa principal. Los prototipos de funciones son más útiles cuando se define una función en un archivo fuente y se llama a esa función en otro archivo.

¿Qué es la definición de función en C??

La definición de la función tiene la implementación real de la función. Contiene lo que la función debe hacer. Cuando el programa llama a la función, el control se transfiere a la función llamada. Después de la ejecución de la función, el control vuelve a la función principal. Los datos requeridos se pasan a la función como una lista de parámetros. Si hay un valor de retorno, entonces se menciona el tipo de retorno. Si no hay valores de retorno, el tipo de retorno es nulo. Consulte la siguiente función para calcular el área de un triángulo.

#incluir

float calArea (int x, int y);

int main ()

int p = 10;

int q = 20;

zona llana;

área = calArea (p, q);

printf ("El valor máximo es% f \ n", área);

devuelve 0;

float calArea (int x, int y)

valor flotante

valor = 0.5 * x * y;

valor de retorno;

De acuerdo con el programa anterior, la segunda declaración indica la función prototipo. La implementación real de lo que realiza la función se escribe después del programa principal. Es la definición de la función. Los valores p y q se pasan a la función calArea. El valor de la variable es una variable local para la función calArea. El área se calcula y se asigna al valor variable. Luego se devuelve al programa principal..

¿Cuáles son las similitudes entre la función prototipo y la definición de función en C??

  • Tanto la función prototipo como la definición de función están relacionadas con funciones.
  • Tanto la función prototipo como la definición de función contienen el nombre de la función.
  • Tanto la función prototipo como la definición de función contienen tipos de retorno.
  • Tanto la función prototipo como la definición de función contienen parámetros..

¿Cuál es la diferencia entre prototipo de función y definición de función en C??

Función Prototipo vs Función Definición en C

El prototipo de función especifica el nombre de la función, el tipo de retorno, los parámetros, pero omite el cuerpo de la función. La definición de la función especifica el nombre de la función, el tipo de retorno; los parámetros incluyen un cuerpo de función.
Implementación
La función prototipo no tiene la función de implementación.. La definición de la función tiene la implementación de la función..

Resumen - Función Prototipo vs Función Definición en C

El uso de funciones en programas tiene ventajas. Las funciones aumentan la reutilización del código. No es necesario escribir el mismo código una y otra vez. En su lugar, el programador puede dividir el programa y llamar a la función necesaria. En C hay funciones de biblioteca. Estas funciones están declaradas en los archivos de cabecera C. Algunos de ellos son printf (), scanf (), etc. El programador también puede escribir sus propias funciones. Hay dos términos que están asociados con funciones en C. Funcionan prototipo y definición de función. La diferencia entre la función prototipo y la definición de función en C es que la función prototipo solo contiene la declaración de la función, mientras que la definición de la función contiene la implementación real de la función.

Descargue el PDF de Function Prototype vs Function Definition en C

Puede descargar la versión en PDF de este artículo y utilizarla para fines fuera de línea según la nota de cita. Descargue la versión en PDF aquí: Diferencia entre prototipo de función y definición de función en C

Referencia:

1.C Definiciones de funciones. Disponible aquí 
2.tutorialspoint.com. "Funciones C".  El puntoDisponible aquí 

Imagen de cortesía:

1.'The C Programming Language logo'By Rezonansowy (Dominio público) a través de Commons Wikimedia