English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C++ função

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:

  1. função da biblioteca padrão

  2. função definida pelo usuário

função da biblioteca padrão

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.

Exemplo1função da biblioteca

#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().

função definida pelo usuário

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.

Como funciona a função definida pelo usuário em programação C?

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().

Exemplo2função definida pelo usuário

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

原型 da função (declaração)

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.

Chamada de função

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'.

Definição de função

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.

Passar parâmetros para a função

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.

Instrução 'return'

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.