o diferença chave entre declaração e definição em C é que A declaração em C informa ao compilador sobre o nome da função, tipo de retorno e parâmetros, enquanto a definição em C contém a implementação real da função. Ou seja, a declaração fornece informações sobre a função ao compilador, enquanto que a definição contém as instruções reais da função para executar uma tarefa específica.
C é uma linguagem de programação estruturada de propósito geral. Ele usa estruturas de controle como if / else, repetições como for loop, while loop e funções. Uma função é um conjunto de instruções que ajuda a executar uma determinada tarefa repetidamente. Além disso, é possível chamar as funções a partir da função principal. Depois de executar a última instrução da função, o controle volta para a função principal. Este artigo discute a declaração e a definição de funções em C e compara a diferença entre elas. A definição da função especifica o que a função faz e a declaração especifica o que vai para a função; é um protótipo.
1. Visão geral e principais diferenças
2. O que é Declaração em C
3. O que é definição em C
4. Comparação lado a lado - Declaração vs Definição em C em forma de tabela
5. Resumo
Declaração fornece informações sobre a função para o compilador. A sintaxe da declaração é a seguinte.
return_ type nome_da_função (lista de parâmetros);
Assuma uma função que calcula a soma de dois números inteiros. A declaração é a seguinte.
int sum (int num1, int num2);
O nome da função é soma e os parâmetros são dois números inteiros que são num1 e num2. Esta função retorna um número inteiro. A declaração completa termina com um ponto-e-vírgula.
Não é necessário incluir os nomes dos parâmetros na declaração. Portanto, também é possível mencionar apenas o tipo de dados da seguinte maneira. A seguir está uma declaração válida.
int sum (int, int);
Definição contém as instruções reais da função para executar uma tarefa específica. A sintaxe é a seguinte.
return_type nome_da_função (lista de parâmetros)
// instruções de função
O nome da função ajuda a identificar a função. Ao invocar uma função, os valores passam para essa função. Esses valores copiam para os parâmetros. A lista de parâmetros pode conter um parâmetro ou número de parâmetros. E esses parâmetros têm um tipo de dados e um nome. Além disso, também pode haver funções sem nenhum parâmetro.
As instruções da função estão dentro das chaves. É o corpo da função. Depois de executar a função, ele retornará um valor. O tipo de retorno depende do valor de retorno. Se a função retornar um número inteiro, o tipo de retorno será int. Se a função retornar um duplo, o tipo de retorno será duplo, etc..
Consulte o código abaixo com declaração e definição de uma função.
Figura 01: Programa para calcular a soma de dois números
De acordo com o programa acima, a linha 3 exibe a declaração. Ele informa o compilador sobre o nome da função, parâmetros etc. Na função principal, dois valores são obtidos do teclado e eles são armazenados na variável 'a' e 'b'. Na linha 12, esses valores são passados para a função chamada soma. Este 'a' e 'b' são argumentos.
Na linha 16, a função soma é executada. Ele copia o valor a para num1 e o valor b para num2. Esta função retorna a soma e esse valor é armazenado na variável 'ans' (linha 12). Finalmente, a resposta é impressa na tela. Em resumo, a linha 3 mostra a declaração, enquanto as linhas 16 a 18 exibem a definição.
A declaração é um protótipo que especifica o nome da função e a assinatura do tipo, como tipos de dados, tipos e parâmetros de retorno, mas omite o corpo da função. A definição especifica o nome da função e as assinaturas de tipo, como tipos de dados, tipos e parâmetros de retorno, e inclui o corpo da função. Declaração informa ao compilador sobre o nome da função e como chamá-lo. Por outro lado, a definição contém a implementação real da função. Descreve a tarefa da função.
A diferença entre declaração e definição em C é que a declaração em C informa ao compilador sobre o nome da função, tipo de retorno e parâmetros, enquanto a definição em C contém a implementação real da função.
Ponto 1.Tutoriais. "Funções C". Tutorials Point, 19 de março de 2018. Disponível aqui
2. "Protótipo de Função". Wikipedia, Fundação Wikimedia, 28 de maio de 2018. Disponível aqui