Diferencia clave: prototipo de función frente a definición de función en C
Una función es un grupo de declaraciones que se utilizan para realizar una tarea específica. En la programación C, la ejecución comienza desde main (). Es una función. En lugar de escribir todas las declaraciones en el mismo programa, se puede dividir en varias funciones. Cada función realizará diferentes funcionalidades. El prototipo de función le dice al compilador sobre el nombre de la función, los tipos de retorno y los parámetros. También se conoce como declaración de función. Cada función tiene un nombre particular para identificarla. Las declaraciones de función 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 mediante la lista de parámetros. La definición de función tiene la funcionalidad real realizada por la función. En la programación en C, existe un prototipo de función y una definición de función. La diferencia clave entre el prototipo de función y la definición de función es que el prototipo de función solo contiene la declaración de la función, mientras que la definición de 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. Descripción general y diferencia clave
2. Qué es el prototipo de función en C
3. Qué es la definición de función en C
4. Similitudes entre el prototipo de función 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 el prototipo de función en C?
Function Prototype proporciona la declaración de función. Especifica el nombre de la función, los tipos de retorno, los parámetros. Los tipos de devolución son el tipo de datos que devuelve la función. Cuando una función devuelve un número entero, el tipo de retorno es int. Cuando una función devuelve un valor flotante, el tipo de retorno es flotante. Si la función no devuelve 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 mediante parámetros. El prototipo de función no contiene la implementación real de la función. El prototipo de función 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 debe encontrarse en num1 y num2. Esos son números enteros y se pasan a la función. El tipo de retorno, al principio, también es int. Entonces, la función devuelve un valor entero. No es necesario escribir los nombres de los parámetros en el prototipo de función. Pero es necesario escribir los tipos de datos. Por tanto, int max (int, int); también es un prototipo de función válido. Si hay dos enteros como num1, num2, num3 y el prototipo está escrito como int max (int num1, int num2, num3); no es válido. Num1, num2 tienen los tipos de datos, pero num3 no tiene un tipo de datos. Por lo tanto, no es válido.
Consulte el programa a continuación.
#incluir
int CarMax (int x, int y);
int main () {
int p = 10;
int q = 20;
int respuesta;
respuesta = calMax (p, q);
printf (“El valor máximo es% d / n”, respuesta);
return 0;
}
int calMax (int p, int q) {
valor int;
si (p> q) {
valor = p;
}
else {
valor = q;
}
valor de retorno;
}
Según lo anterior, la segunda declaración muestra el prototipo de función. No tiene la implementación. La implementación real 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 función tiene la implementación real de la función. Contiene lo que debería hacer la función. 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 se devuelve un valor, se menciona el tipo de devolución. 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
flotador calArea (int x, int y);
int main () {
int p = 10;
int q = 20;
área de flaot;
área = calArea (p, q);
printf ("El valor máximo es% f / n", área);
return 0;
}
flotador calArea (int x, int y) {
valor flotante;
valor = 0,5 * x * y;
valor de retorno;
}
Según el programa anterior, la segunda declaración indica el prototipo de función. La implementación real de lo que realiza la función se escribe después del programa principal. Es la definición de función. Los valores pyq se pasan a la función calArea. El valor de la variable es una variable local de la función calArea. El área se calcula y se asigna al valor de la variable. Luego se regresa al programa principal.
¿Cuáles son las similitudes entre el prototipo de función y la definición de función en C?
- Tanto el prototipo de función como la definición de función están relacionados con funciones.
- Tanto el prototipo de función como la definición de función contienen el nombre de la función.
- Tanto el prototipo de función como la definición de función contienen tipos de retorno.
- Tanto el prototipo de función como la definición de función contienen parámetros.
¿Cuál es la diferencia entre el prototipo de función y la definición de función en C?
Diferencia del medio del artículo antes de la mesa
Prototipo de función vs Definición de función en C |
|
El prototipo de función especifica el nombre de la función, el tipo de retorno y los parámetros, pero omite el cuerpo de la función. | La definición de función especifica el nombre de la función, tipo de retorno; los parámetros incluyen un cuerpo de función. |
Implementación | |
El prototipo de función no tiene la implementación de la función. | La definición de función tiene la implementación de la función. |
Resumen: prototipo de función frente a definición de función en C
Usar 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 cambio, el programador puede dividir el programa y llamar a la función necesaria. En C hay funciones de biblioteca. Estas funciones se declaran en los archivos de encabezado 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. Son prototipo de función y definición de función. La diferencia entre el prototipo de función y la definición de función en C es que el prototipo de función solo contiene la declaración de la función, mientras que la definición de función contiene la implementación real de la función.
Descargue el PDF de Prototipo de función vs Definición de función en C
Puede descargar la versión PDF de este artículo y usarla para fines sin conexión según la nota de cita. Descargue la versión PDF aquí: Diferencia entre el prototipo de función y la definición de función en C