Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Void e Recursão | Funções
Fundamentos de C

bookVoid e Recursão

O Tipo de Retorno void em C

Na linguagem de programação C, funções declaradas com um tipo de retorno específico devem conter uma instrução return, entregando um valor correspondente a esse tipo. No entanto, existem cenários em que uma função não precisa retornar nada – por exemplo, quando apenas exibe texto na tela. Para esses casos, a função deve ser declarada com o tipo void.

Main.c

Main.c

copy
12345678910
#include <stdio.h> void func() { printf("This function returns nothing\n"); } int main() { func(); return 0; }

A palavra-chave void especifica que uma função não retorna um valor, e também pode ser utilizada no contexto de ponteiros. Tentar declarar uma variável do tipo void resultará em erro, pois o compilador não saberá quanto de memória alocar.

Main.c

Main.c

copy
1234567
#include <stdio.h> int main() { void variable; return 0; }

Recursão

C oferece a capacidade de uma função chamar a si mesma, uma técnica conhecida como recursão.

Imagine a recursão como o ato de esticar e depois soltar um elástico. É frequentemente utilizada em operações matemáticas, como o cálculo de fatoriais.

Fatoriais são frequentemente empregados na aproximação de valores de funções ao expandi-las em séries de Taylor ou Maclaurin.

Main.c

Main.c

copy
1234567891011121314151617181920
#include <stdio.h> int factorial(int n) { // if n = 0 or 1, because 0! = 1 and 1! = 1 if (n == 0 || n == 1) return 1; // recursion case else return n * factorial(n - 1); } int main() { int n = 3; printf("factorial(%d) = %d\n", n, factorial(n)); return 0; }

No contexto da recursão, a função continuará a se chamar até que atenda à condição n == 0 || n == 1. Uma vez que essa condição é satisfeita, os resultados das chamadas subsequentes da função factorial() são retornados em ordem reversa, semelhante ao fechamento de uma sanfona. Quando o passo 6 é alcançado, a chamada inicial para factorial(3) retornará 6.

question mark

Imagine um anúncio em que você vê uma garota segurando uma garrafa de leite. Nessa garrafa, há outra imagem da mesma garota segurando uma garrafa de leite, e nessa garrafa menor, há mais uma imagem da garota, e assim por diante. Como é chamado esse conceito?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 5. Capítulo 6

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Awesome!

Completion rate improved to 2.63

bookVoid e Recursão

Deslize para mostrar o menu

O Tipo de Retorno void em C

Na linguagem de programação C, funções declaradas com um tipo de retorno específico devem conter uma instrução return, entregando um valor correspondente a esse tipo. No entanto, existem cenários em que uma função não precisa retornar nada – por exemplo, quando apenas exibe texto na tela. Para esses casos, a função deve ser declarada com o tipo void.

Main.c

Main.c

copy
12345678910
#include <stdio.h> void func() { printf("This function returns nothing\n"); } int main() { func(); return 0; }

A palavra-chave void especifica que uma função não retorna um valor, e também pode ser utilizada no contexto de ponteiros. Tentar declarar uma variável do tipo void resultará em erro, pois o compilador não saberá quanto de memória alocar.

Main.c

Main.c

copy
1234567
#include <stdio.h> int main() { void variable; return 0; }

Recursão

C oferece a capacidade de uma função chamar a si mesma, uma técnica conhecida como recursão.

Imagine a recursão como o ato de esticar e depois soltar um elástico. É frequentemente utilizada em operações matemáticas, como o cálculo de fatoriais.

Fatoriais são frequentemente empregados na aproximação de valores de funções ao expandi-las em séries de Taylor ou Maclaurin.

Main.c

Main.c

copy
1234567891011121314151617181920
#include <stdio.h> int factorial(int n) { // if n = 0 or 1, because 0! = 1 and 1! = 1 if (n == 0 || n == 1) return 1; // recursion case else return n * factorial(n - 1); } int main() { int n = 3; printf("factorial(%d) = %d\n", n, factorial(n)); return 0; }

No contexto da recursão, a função continuará a se chamar até que atenda à condição n == 0 || n == 1. Uma vez que essa condição é satisfeita, os resultados das chamadas subsequentes da função factorial() são retornados em ordem reversa, semelhante ao fechamento de uma sanfona. Quando o passo 6 é alcançado, a chamada inicial para factorial(3) retornará 6.

question mark

Imagine um anúncio em que você vê uma garota segurando uma garrafa de leite. Nessa garrafa, há outra imagem da mesma garota segurando uma garrafa de leite, e nessa garrafa menor, há mais uma imagem da garota, e assim por diante. Como é chamado esse conceito?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 5. Capítulo 6
some-alt