Baixe o app para aproveitar ainda mais
Prévia do material em texto
Função 1 🌑 Função Definição Escrita → formato nome(formato){} Tipos →int, void, float Obrigatório Sempre declarar antes do main Sempre que uma função retorna um endereço colocar * na frente. ( Exemplo de endereço é um vetor ) int *nome(int m); Passagem de parâmetro Passagem por valor Essa é a forma como ocorre normalmente as funções Funcionamento O valor normal é copiado para a nova função No final a variável local é destruída e o valor é descartado O fluxo do programa continua de onde estava antes da função ser chamada e a variável inicial continua igual Passagem por referência É quando é passado o endereço das variáveis e não seu valor A alteração da variável na função chamada ocorre também no local natural dela A maneira de chamada é diferente, tem que ter um & antes da variável Quando uma variável recebe o endereço de outra se fala que ela está apontando para outra Chamado de ponteiro, pois a mudança ocorre onde ele está apontando. Escrita → tipo* x Função 2 Escrita chamada → função(&x) ( O & significa endereço ) Recursão Características Função recursiva é uma que chama a si mesmo Serve para generalizar quando se tem algo muito repetitivo Dividi um problema maior em vários menores Toda função recursiva precisa ter um critério de parada, pois se não fica se chamando para sempre Funcionamento: Caminho de ida: Primeiro ocorre a chamada dela que vai se chamando até entrar no critério de parar, e assim entrar no caso base. Caminho de volta: Ela devolve os resultados e remove a função chamada da memória até não restar nenhuma que foi chamada. Observações O parâmetro passado pela função deve ser mudado quando se chama, para existir um fim na sua chamada. Uma função recursiva gasta mais tempo que sua versão iterativa, pois cada vez que é chamada ela precisa ser armazenada
Compartilhar