Una declaración de la función es un prototipo. Una firma de función indica cuál es el tipo de devolución y los parámetros utilizados que componen la firma.Considere esto:
int foo(int, int); /* Function Declaration */
/* Implementation of foo
** Function signature
*/
int foo(int a, int b){
}
Ahora, tenga en cuenta este escenario: se pide a un programador de lo que es la firma de la función de foo
:
- devuelve un tipo de datos de
int
- dos parámetros son también del tipo de datos de
int
, llamado a
y b
respectivamente
T Por otro lado, el prototipo de función es identificar en el compilador C/C++ qué esperar y si la firma no coincide con el prototipo, el compilador emitirá un error, en el contexto del "error de declaración de función" o 'prototipo no coincide'.
Espero que esto ayude, Saludos cordiales, Tom.
Formalmente, no hay tal cosa como "función de firma" en C. En C simplemente no hay necesidad de que el concepto de "función de la firma". Tu pregunta es puramente C++. No tiene sentido en C. – AnT