C Funções definidas pelo usuário
Funções definidas pelo usuário em C
Neste tutorial, você aprenderá a criar funções definidas pelo usuário em programação C com a ajuda de um exemplo.
Uma função é um bloco de código que executa uma tarefa específica.
C permite definir funções de acordo com sua necessidade. Essas funções são conhecidas como funções definidas pelo usuário. Por exemplo:
Suponha que você precise criar um círculo e colori-lo dependendo do raio e da cor. Você pode criar duas funções para resolver este problema:
createCircle()
funçãocolor()
função
Exemplo:função definida pelo usuário
Aqui está um exemplo para adicionar dois números inteiros. Para realizar esta tarefa, criamos um
addNumbers()
definido pelo usuário .
#include <stdio.h>
int addNumbers(int a, int b); // function prototype
int main()
{
int n1,n2,sum;
printf("Enters two numbers: ");
scanf("%d %d",&n1,&n2);
sum = addNumbers(n1, n2); // function call
printf("sum = %d",sum);
return 0;
}
int addNumbers(int a, int b) // function definition
{
int result;
result = a+b;
return result; // return statement
}
Protótipo de função
Um protótipo de função é simplesmente a declaração de uma função que especifica o nome da função, parâmetros e tipo de retorno. Não contém o corpo da função.
Um protótipo de função fornece informações ao compilador de que a função pode ser usada posteriormente no programa.
Sintaxe do protótipo de função
returnType functionName(type1 argument1, type2 argument2, ...);
No exemplo acima,
int addNumbers(int a, int b);
é o protótipo da função que fornece as seguintes informações ao compilador:- nome da função é
addNumbers()
- o tipo de retorno da função é
int
- dois argumentos do tipo
int
são passados para a função
O protótipo da função não é necessário se a função definida pelo usuário for definida antes do
main()
função. Chamando uma função
O controle do programa é transferido para a função definida pelo usuário chamando-a.
Sintaxe da chamada de função
functionName(argument1, argument2, ...);
No exemplo acima, a chamada da função é feita usando
addNumbers(n1, n2);
declaração dentro do main()
função. Definição da função
A definição de função contém o bloco de código para executar uma tarefa específica. Em nosso exemplo, somando dois números e retornando.
Sintaxe da definição de função
returnType functionName(type1 argument1, type2 argument2, ...) { //body of the function }
Quando uma função é chamada, o controle do programa é transferido para a definição da função. E, o compilador começa a executar os códigos dentro do corpo de uma função.
Passando argumentos para uma função
Na programação, argumento refere-se à variável passada para a função. No exemplo acima, duas variáveis n1 e n2 são passados durante a chamada da função.
Os parâmetros a e b aceita os argumentos passados na definição da função. Esses argumentos são chamados de parâmetros formais da função.
O tipo de argumentos passados para uma função e os parâmetros formais devem corresponder, caso contrário, o compilador lançará um erro.
Se n1 é do tipo char, a também deve ser do tipo char. Se n2 é do tipo float, variável b também deve ser do tipo float.
Uma função também pode ser chamada sem passar um argumento.
Declaração de devolução
A instrução return encerra a execução de uma função e retorna um valor para a função de chamada. O controle do programa é transferido para a função de chamada após a instrução de retorno.
No exemplo acima, o valor do result variável é retornada à função principal. A soma variável no
main()
função recebe este valor. Sintaxe da instrução de retorno
return (expression);
Por exemplo,
return a; return (a+b);
O tipo de valor retornado da função e o tipo de retorno especificado no protótipo da função e na definição da função devem corresponder.
Visite esta página para saber mais sobre como passar argumentos e retornar valor de uma função.
Linguagem C