Funções são usadas para criar pequenos pedaços de códigos separados do programa principal. Em C/C++, tudo, na verdade, é uma função.
INT MAIN (VOID) é uma função, por exemplo.
Exceto a função
MAIN, todas as outras funções são secundárias, o que significa que elas podem existir ou não.
Então, qual a vantagem de fazermos uma função?
Funções são importantes porque elas retornam valores, ajudam a fragmentar o código em partes menores - mais fáceis de lidar - e ainda por cima podem ser utilizadas mais de uma vez no mesmo programa, poupando preciosos minutos de programação e inúmeras linhas de código.
Criando funções sem argumentos
Em C/C++ as funções podem ter ou não argumentos. Primeiramente, veremos as funções sem argumentos.
Funções são como variáveis que guardam inúmeras linhas de código. Se não prototipadas*, elas devem ser escritas antes da função MAIN, afim de serem compiladas primeiro para poderem ser utilizadas pela função main.
Post sobre prototipagem.
Como haviamos dito, funções são como variáveis. Então, criamos uma
função indicando o tipo de retorno (saída) que será int, float,
etc...Nomeamos a função (valem as mesma regras das variáveis, ex.: Não
começa nomes de funções com número) e terminamos colocando entre
parênteses os argumentos. Como nossas primeiras funções não terão
argumentos entre parênteses usaremos VOID (do inglês VAZIO). Todo o
código da função deve estar dentro de um bloco de instrução ( { } ),
mesmo que haja apenas uma linha.
Obs.: Não se usa ponto-e-vírgula no final da criação da função.
Como a na função que usaremos não retornará nenhum valor porque a
única coisa que ela faz é mostrar uma mensagem na tela. Ela terá o
tipo de retorno vazio também - void.
Após a função ser criada, basta chamarmos a função dentro da função principal MAIN.
Para chamá-la, apenas digitamos o nome da função e entre
parênteses colocamos seus argumentos. Como esta função não tem
argumentos, simplesmente colocamos nada entre os parêntese.
#include <stdio.h>
void pokemon(void)
{
printf("\n\nEu programo usando função, goto é para os fracos =D");
return;
}
int main()
{
printf("\nEu sou uma função primaria, portanto sou eu quem é executada primeiro");
pokemon(); //chamada da função
printf("\n\nEu sou o main portanto eu encerro o programa");
/*
* Acho que vc deve estar se perguntando, cade o system("PAUSE");?
* Eu estou programando no sistema Operacional Linux na ferramenta Geany
* A tela trava sozinha, mais vc que está com o Windows e usando o Dev C++
* Lembre-se do #include <stdlib.h> e system("pause"); =D
*/
return 0;
}
Bom pessoal parte 1, encerrada aqui vimos como programar utilizando funções que não recebem argumento (parâmetros) e que não retornão nada para quem os chamou. No próximo Post vamos aprender a fazer funções que retornam valores para quem a chama e posteriormente, aprenderemos como trabalhar com passagem de parâmetros (argumentos) por funções.
Até mais pessoal...