English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste artigo, você aprenderá sobre funções C ++Tudo o que você precisa saber sobre funções. Quais tipos de funções existem, como usá-las em exemplos.
Em programação, uma função é um bloco de código que agrupa código para executar uma tarefa específica.
depende se a função é pré-definida ou criada pelo programador; há dois tipos de funções:
função da biblioteca padrão
função definida pelo usuário
função da biblioteca é C ++função integrada na programação.
Os programadores podem usar funções da biblioteca diretamente; eles não precisam escrevê-las.
#include <iostream> #include <cmath> using namespace std; int main() { double número, raiz quadrada; cout << "Entrar com um número: "; cin >> number; // sqrt() é uma função biblioteca usada para calcular a raiz quadrada squareRoot = sqrt(number); cout << "número " << number << " raiz quadrada = " << squareRoot; return 0; }
Resultado da saída
Entrar com um número: 26 número 26 raiz quadrada = 5.09902
No exemplo acima, a função biblioteca sqrt() é chamada para calcular o número26raiz quadrada.
O código de atenção no programa acima #include <cmath>. Aqui cmath é o cabeçalho. A função sqrt() está definida no cabeçalho cmath.
Quando você inclui o arquivo <cmath> usando #include <cmath> no programa, você pode usar todas as funções definidas no cmath.
Cada C válido ++O programa deve ter pelo menos uma função, ou seja, a função main().
C ++Permite que o programador defina suas próprias funções.
As funções definidas pelo usuário agrupam o código para executar uma tarefa específica e atribuem um nome (identificador) a esse grupo de código.
Ao chamar essa função de qualquer parte do programa, elas executarão o código definido no corpo da função.
Conforme a figura.
Quando o programa começa a executar, o sistema chama a função main(), ou seja, o código começa a ser executado na função main() quando o programa começa a executar.
Quando o controle do programa chega a function_name() interna do main(), ele se move para void function_name() e executa todo o código dentro de void function_name().
Então, o controle do programa volta para a função principal, onde, conforme mostrado na figura, é executado o código após a chamada da função function_name().
C ++O programa soma dois inteiros. Cria uma função add() para adicionar inteiros e exibe sum na função main().
#include <iostream> using namespace std; // 原型 da função (declaração) int add(int, int); int main() { int num1, num2, sum cout << "Entrar com dois números a serem somados: "; cin >> num1 >> num2; // Chamada da função sum = add(num1, num2); cout << "Soma = " << sum; return 0; } // Definição de função int add(int a, int b) { int add; add = a + b; // Retorno da sentença return add; }
Resultado da saída
Entrar com dois números a serem somados: 8 -4 Soma = 4
Se a função definida pelo usuário for definida após a função 'main()', o compilador exibirá um erro. Isso é porque o compilador não sabe sobre a função definida pelo usuário, o tipo dos parâmetros passados para a função e o tipo de retorno.
Em ++No C, o protótipo da função é a declaração da função, sem o corpo para fornecer informações ao compilador sobre a função definida pelo usuário. O protótipo da função no exemplo acima é:
int add(int, int);
Você pode ver que no protótipo não há corpo da função. E há apenas o tipo de retorno dos parâmetros, sem parâmetros. Você também pode declarar o protótipo da função da seguinte forma, mas não é necessário escrever os parâmetros.
int add(int a, int b);
Atenção:Se a função definida pelo usuário existir antes da função 'main()', não é necessário definir o protótipo.
Para executar o código do corpo da função, é necessário chamar (chamar) a função definida pelo usuário.
No programa acima, add(num1,num2); Chamada interna da função 'main()' da função definida pelo usuário.
A função retorna um inteiro, que é armazenado na variável 'variable' 'add'.
A função em si é chamada de definição de função. A definição de função no programa acima é:
// Definição de função int add(int a, int b) { int add; add = a + b; return add; }
Quando a função é chamada, o controle é transferido para a primeira instrução do corpo da função.
Em seguida, execute as outras instruções do corpo da função uma após a outra.
Quando todo o código da definição da função é executado, o controle do programa muda para o programa que chamou.
Em programação, parâmetro (parameter) é o dado passado para a função (definição da função) durante a chamada da função.
No exemplo acima, duas variáveis 'num'1e 'num'2São passados para a função durante a chamada da função. Esses parâmetros são chamados de parâmetros reais.
num1e 'num'2Os valores são inicializados nas variáveis 'a' e 'b'. Esses parâmetros 'a' e 'b' são chamados de parâmetros formais.
Como mostrado na figura a seguir:
Considerações sobre a passagem de parâmetros
O número de parâmetros reais e formais deve ser o mesmo. (Exceção:Sobrecarga de função)
O tipo do primeiro parâmetro real deve coincidir com o tipo do primeiro parâmetro formal. Da mesma forma, o tipo do segundo parâmetro real deve coincidir com o tipo do segundo parâmetro formal, e assim por diante.
Você pode chamar a função 'a' sem passar nenhum parâmetro. O número de parâmetros passados para a função depende da forma como o programador resolve o problema.
Você pode atribuir um valor padrão aos parâmetros. Esses parâmetros são chamados deParâmetros padrão.
No programa acima, os dois parâmetros são do tipo 'int'. No entanto, não há necessidade de usar dois parâmetros do mesmo tipo ao mesmo tempo.
A função pode usar a instrução 'return' para retornar um único valor para o programa que chamou.
No programa acima, a seguinte instrução é usada para retornar o valor de 'add' do função definida pelo usuário para o programa que chamou:
return add;
A figura a seguir ilustra o funcionamento da sentença return.
No programa acima, o valor da função definida pelo usuário é retornado para a função chamada. Em seguida, esse valor é armazenado em uma variável sum.
Atenção ao tipo da variável de retorno, ou seja, add é do tipo int e sum também é do tipo int.
Além disso, note que o tipo de retorno da função é definido no declaração da função int add(int a, int b), onde int antes de add(int a, int b) indica que a função deve retornar um valor do tipo int.
Se não houver valor a ser retornado para a função chamada, deve-se usar void.