Diferença entre protótipo de função e definição de função em C

Índice:

Diferença entre protótipo de função e definição de função em C
Diferença entre protótipo de função e definição de função em C

Vídeo: Diferença entre protótipo de função e definição de função em C

Vídeo: Diferença entre protótipo de função e definição de função em C
Vídeo: Função sem retorno e protótipo - Linguagem C 2024, Novembro
Anonim

Key Difference – Protótipo de Função vs Definição de Função em C

Uma função é um grupo de instruções usadas para realizar uma tarefa específica. Na programação C, a execução começa a partir de main(). É uma função. Em vez de escrever todas as instruções no mesmo programa, ele pode ser dividido em várias funções. Cada função executará funcionalidades diferentes. O protótipo da função informa ao compilador sobre o nome da função, tipos de retorno e parâmetros. Também é conhecido como uma declaração de função. Cada função tem um nome específico para identificá-la. As instruções de função são escritas dentro de um par de chaves. As funções podem retornar um valor. Existem algumas funções que não retornam um valor. Os dados são passados para a função usando a lista de parâmetros. A definição da função tem a funcionalidade real executada pela função. Na programação C, existe o protótipo da função e a definição da função. A principal diferença entre o protótipo da função e a definição da função é que o protótipo da função contém apenas a declaração da função, enquanto a definição da função contém a implementação real da função. A definição da função tem as variáveis locais e as instruções que determinam o que a função faz.

O que é Protótipo de Função em C?

Function Prototype fornece a declaração da função. Especifica o nome da função, os tipos de retorno, os parâmetros. Os tipos de retorno são o tipo de dados que retorna da função. Quando uma função está retornando um inteiro, o tipo de retorno é int. Quando uma função está retornando um valor float, o tipo de retorno é um float. Se a função não estiver retornando nenhum valor, é uma função void. O nome da função é usado para identificá-la. As palavras-chave C não podem ser usadas como nomes de funções. Os dados são passados para a função usando parâmetros. O protótipo da função não contém a implementação real da função. O protótipo da função tem a seguinte sintaxe.

(lista de parâmetros);

Se houver uma função para calcular o máximo de dois números, a declaração pode ser escrita como int max (int num1, int num2); O valor máximo deve ser encontrado em num1 e num2. Esses são números inteiros e são passados para a função. O tipo de retorno, no início, também é int. Portanto, a função retorna um valor inteiro. Não é necessário escrever os nomes dos parâmetros no protótipo da função. Mas é necessário escrever os tipos de dados. Portanto, int max (int, int); também é um protótipo de função válido. Se houver dois inteiros como num1, num2, num3 e o protótipo for escrito como int max(int num1, int num2, num3); é inválido. O num1, num2 tem os tipos de dados, mas num3 não tem um tipo de dados. Portanto, é inválido.

Diferença entre protótipo de função e definição de função em C
Diferença entre protótipo de função e definição de função em C

Consulte o programa abaixo.

include

int CarMax(int x, int y);

int main(){

int p=10;

int q=20;

int resposta;

answer=calMax(p, q);

printf(“O valor máximo é %d\n”, resposta);

return 0;

}

int calMax(int p, int q){

int valor;

if(p>q) {

valor=p;

}

else {

valor=q;

}

valor de retorno;

}

De acordo com o acima, a segunda declaração mostra o protótipo da função. Não tem a implementação. A implementação real é após o programa principal. Os protótipos de função são mais úteis ao definir uma função em um arquivo de origem e chamar essa função em outro arquivo.

O que é Definição de Função em C?

A definição da função tem a implementação real da função. Ele contém o que a função deve fazer. Quando o programa chama a função, o controle é transferido para a função chamada. Após a execução da função, o controle retorna à função principal. Os dados necessários são passados para a função como uma lista de parâmetros. Se houver um valor retornando, o tipo de retorno será mencionado. Se não houver valores de retorno, o tipo de retorno será void. Consulte a função abaixo para calcular a área de um triângulo.

include

float calArea(int x, int y);

int main() {

int p=10;

int q=20;

área plana;

area=calArea(p, q);

printf (“O valor máximo é %f\n”, area);

return 0;

}

float calArea (int x, int y) {

valor flutuante;

valor=0,5xy;

valor de retorno;

}

De acordo com o programa acima, a segunda instrução indica o protótipo da função. A implementação real do que a função executa é escrita após o programa principal. É a definição da função. Os valores p e q são passados para a função calArea. O valor da variável é uma variável local para a função calArea. A área é calculada e atribuída ao valor da variável. Em seguida, ele é retornado ao programa principal.

Quais são as semelhanças entre o protótipo da função e a definição da função em C?

  • Tanto o protótipo de função quanto a definição de função estão relacionados a funções.
  • Tanto o protótipo da função quanto a definição da função contêm o nome da função.
  • Tanto o protótipo da função quanto a definição da função contêm tipos de retorno.
  • Tanto o protótipo da função quanto a definição da função contêm parâmetros.

Qual é a diferença entre protótipo de função e definição de função em C?

Protótipo de Função vs Definição de Função em C

O protótipo da função especifica o nome da função, tipo de retorno, parâmetros, mas omite o corpo da função. A definição da função especifica o nome da função, tipo de retorno; parâmetros incluem um corpo de função.
Implementação
O protótipo da função não possui a implementação da função. A definição da função tem a implementação da função.

Resumo – Protótipo de Função vs Definição de Função em C

O uso de funções em programas tem vantagens. As funções aumentam a reutilização do código. Não é necessário escrever o mesmo código repetidamente. Em vez disso, o programador pode dividir o programa e chamar a função necessária. Em C existem funções de biblioteca. Essas funções são declaradas nos arquivos de cabeçalho C. Alguns deles são printf(), scanf() etc. O programador também pode escrever suas próprias funções. Existem dois termos que estão associados a funções em C. Eles são protótipo de função e definição de função. A diferença entre o protótipo da função e a definição da função em C é que o protótipo da função contém apenas a declaração da função, enquanto a definição da função contém a implementação real da função.

Baixe o PDF de Protótipo de Função vs Definição de Função em C

Você pode baixar a versão em PDF deste artigo e usá-la para fins offline conforme nota de citação. Faça o download da versão em PDF aqui: Diferença entre protótipo de função e definição de função em C

Recomendado: