Função C ++ (com exemplos)

Neste tutorial, aprenderemos sobre a função C ++ e as expressões de função com a ajuda de exemplos.

Uma função é um bloco de código que executa uma tarefa específica.

Suponha que precisamos criar um programa para criar um círculo e colori-lo. Podemos criar duas funções para resolver este problema:

  • uma função para desenhar o círculo
  • uma função para colorir o círculo

Dividir um problema complexo em partes menores torna nosso programa fácil de entender e reutilizável.

Existem dois tipos de função:

  1. Funções de biblioteca padrão: predefinidas em C ++
  2. Função definida pelo usuário : criada por usuários

Neste tutorial, vamos nos concentrar principalmente nas funções definidas pelo usuário.

Função C ++ definida pelo usuário

C ++ permite que o programador defina sua própria função.

Um código de grupos de funções definidos pelo usuário para realizar uma tarefa específica e esse grupo de códigos recebe um nome (identificador).

Quando a função é chamada de qualquer parte do programa, ela executa os códigos definidos no corpo da função.

Declaração de função C ++

A sintaxe para declarar uma função é:

 returnType functionName (parameter1, parameter2,… ) ( // function body )

Aqui está um exemplo de declaração de função.

 // function declaration void greet() ( cout << "Hello World"; )

Aqui,

  • o nome da função é greet()
  • o tipo de retorno da função é void
  • os parênteses vazios significam que não possui parâmetros
  • o corpo da função é escrito dentro ()

Observação: aprenderemos sobre returnTypee parametersmais tarde neste tutorial.

Chamando uma função

No programa acima, declaramos uma função chamada greet(). Para usar a greet()função, precisamos chamá-la.

Veja como podemos chamar a greet()função acima .

 int main() ( // calling a function greet(); )
Como funciona a função em C ++

Exemplo 1: exibir um texto

 #include using namespace std; // declaring a function void greet() ( cout << "Hello there!"; ) int main() ( // calling the function greet(); return 0; )

Resultado

 Olá!

Parâmetros de Função

Conforme mencionado acima, uma função pode ser declarada com parâmetros (argumentos). Um parâmetro é um valor que é passado ao declarar uma função.

Por exemplo, vamos considerar a função abaixo:

 void printNum(int num) ( cout << num; )

Aqui, a intvariável num é o parâmetro da função.

Passamos um valor para o parâmetro da função ao chamar a função.

 int main() ( int n = 7; // calling the function // n is passed to the function as argument printNum(n); return 0; )

Exemplo 2: função com parâmetros

 // program to print a text #include using namespace std; // display a number void displayNum(int n1, float n2) ( cout << "The int number is " << n1; cout << "The double number is " << n2; ) int main() ( int num1 = 5; double num2 = 5.5; // calling the function displayNum(num1, num2); return 0; )

Resultado

 O número interno é 5 O número duplo é 5,5

No programa acima, usamos uma função que tem um intparâmetro e um doubleparâmetro.

Em seguida, passamos num1 e num2 como argumentos. Esses valores são armazenados pelos parâmetros de função n1 e n2, respectivamente.

Função C ++ com parâmetros

Observação: o tipo dos argumentos transmitidos ao chamar a função deve corresponder aos parâmetros correspondentes definidos na declaração da função.

Declaração de Devolução

Nos programas acima, usamos void na declaração da função. Por exemplo,

 void displayNumber() ( // code )

Isso significa que a função não está retornando nenhum valor.

Também é possível retornar um valor de uma função. Para isso, precisamos especificar o returnTypeda função durante a declaração da função.

Então, a returninstrução pode ser usada para retornar um valor de uma função.

Por exemplo,

 int add (int a, int b) ( return (a + b); )

Aqui, temos o tipo de dados em intvez de void. Isso significa que a função retorna um intvalor.

O código return (a + b);retorna a soma dos dois parâmetros como o valor da função.

A returndeclaração indica que a função foi encerrada. Qualquer código returndentro da função não é executado.

Exemplo 3: adicionar dois números

 // program to add two numbers using a function #include using namespace std; // declaring a function int add(int a, int b) ( return (a + b); ) int main() ( int sum; // calling the function and storing // the returned value in sum sum = add(100, 78); cout << "100 + 78 = " << sum << endl; return 0; )

Resultado

 100 + 78 = 178

No programa acima, a add()função é usada para encontrar a soma de dois números.

Passamos dois intliterais 100e 78enquanto chamamos a função.

Armazenamos o valor retornado da função na variável sum e então o imprimimos.

Trabalho da função C ++ com declaração de retorno

Observe que sum é uma variável do inttipo. Isso ocorre porque o valor de retorno de add()é do inttipo.

Protótipo de Função

In C++, the code of function declaration should be before the function call. However, if we want to define a function after the function call, we need to use the function prototype. For example,

 // function prototype void add(int, int); int main() ( // calling the function before declaration. add(5, 3); return 0; ) // function definition void add(int a, int b) ( cout << (a + b); )

In the above code, the function prototype is:

 void add(int, int);

This provides the compiler with information about the function name and its parameters. That's why we can use the code to call a function before the function has been defined.

The syntax of a function prototype is:

 returnType functionName(dataType1, dataType2,… );

Example 4: C++ Function Prototype

 // using function definition after main() function // function prototype is declared before main() #include using namespace std; // function prototype int add(int, int); int main() ( int sum; // calling the function and storing // the returned value in sum sum = add(100, 78); cout << "100 + 78 = " << sum << endl; return 0; ) // function definition int add(int a, int b) ( return (a + b); )

Output

 100 + 78 = 178

The above program is nearly identical to Example 3. The only difference is that here, the function is defined after the function call.

That's why we have used a function prototype in this example.

Benefits of Using User-Defined Functions

  • Functions make the code reusable. We can declare them once and use them multiple times.
  • Functions make the program easier as each small task is divided into a function.
  • Functions increase readability.

C++ Library Functions

Library functions are the built-in functions in C++ programming.

Programmers can use library functions by invoking the functions directly; they don't need to write the functions themselves.

Some common library functions in C++ are sqrt(), abs(), isdigit(), etc.

In order to use library functions, we usually need to include the header file in which these library functions are defined.

For instance, in order to use mathematical functions such as sqrt() and abs(), we need to include the header file cmath.

Example 5: C++ Program to Find the Square Root of a Number

 #include #include using namespace std; int main() ( double number, squareRoot; number = 25.0; // sqrt() is a library function to calculate the square root squareRoot = sqrt(number); cout << "Square root of " << number << " = " << squareRoot; return 0; )

Output

 Raiz quadrada de 25 = 5

Neste programa, a sqrt()função de biblioteca é usada para calcular a raiz quadrada de um número.

A declaração da função de sqrt()é definida no cmatharquivo de cabeçalho. É por isso que precisamos usar o código #include para usar a sqrt()função.

Para saber mais, visite as funções da biblioteca padrão C ++.

Artigos interessantes...