Escolar Documentos
Profissional Documentos
Cultura Documentos
1
LPG – FUNÇÕES
2
LPG – FUNÇÕES – DEFINIÇÃO
3
LPG – FUNÇÕES
• Sintaxe:
tipoDeRetorno nomeDaFuncao(listaDeParâmetros) {
corpoDaFuncao;
}
• Exemplo:
int a;
scanf(“%d”, &a);
5
LPG – FUNÇÕES – PARÂMETROS
(FORMAIS)
6
LPG – FUNÇÕES – RETORNO
• Sintaxe:
• return nomeDaVariável;
• nomeDaVariável não é usado em funções que retornam void
• Funções que não possuem retorno são void (return é opcional)
• O return encerra a execução da função
• Pode ser comparado com o break usado nos loops
• Uma função pode ter mais de um return
7
LPG – FUNÇÕES – EXEMPLO 1
return a / b;
}
8
LPG – FUNÇÕES – EXEMPLO 2
int dobro(int a) {
return 2 * a;
}
int main(int a) {
int c;
c = 8;
c = dobro(c);
return 0;
}
9
LPG – FUNÇÕES – CHAMADA
10
LPG – FUNÇÕES – PROTÓTIPO
11
LPG – FUNÇÕES – PROTÓTIPO –
EXEMPLO
12
LPG - A FUNÇÃO MAIN
13
LPG - A FUNÇÃO MAIN – EXEMPLO
#include <stdio.h>
14
LPG – LOCAIS ONDE A FUNÇÃO PODE
ESTAR
• Biblioteca
• nomeDaBiblioteca.h – protótipos das funções e definições básicas
• nomeDaBiblioteca.c – código que efetua as operações (funções)
15
LPG – FUNÇÕES – RECURSIVIDADE
int soma(int a) {
if(a == 0)
return 0;
return a + soma(a - 1); // chamada recursiva!
}
int main(int a) {
int c;
c = soma(10);
return 0;
}
16
LPG – FUNÇÕES – DICAS FINAIS
• uma função pode retornar qualquer valor válido em C, sejam de tipos pré-
definidos ( int, char, float ) ou de tipos definidos pelo usuário ( struct,
typedef )
• uma função que não retorna nada é definida colocando-se o tipo void como
valor retornado (= procedure)
• Pode-se colocar void entre parênteses se a função não recebe nenhum
parâmetro (ou deixe em branco, significa a mesma coisa)
• Qual a menor função possível:
void faz_nada( void ) { }
17
LPG – FUNÇÕES – DICAS FINAIS
18