Declaração de funções

Publicado em: 11/03/2008  |  C / C++  |  Visualizações: 1.307  |  1 Comentário(s)

Definição


Função é conjunto de comandos agrupados em um bloco que recebe um nome e através deste pode ser ativado.

Porque usar funções ?


    * Para permitir o reaproveitamento de código já construído(por você ou por outros programadores);
    * Para evitar que um trecho de código que seja repetido várias vezes dentro de um mesmo programa;
    * Para permitir a alteração de um trecho de código de uma forma mais rápida. Com o uso de uma função é preciso alterar apenas dentro da função que se deseja;
    * Para que os blocos do programa não fiquem grandes demais e, por conseqüência, mais difíceis de entender;
    * Para facilitar a leitura do programa-fonte de uma forma mais fácil;
    * Para separar o programa em partes(blocos) que possam ser logicamente compreendidos de forma isolada.

Primero Exemplo


Em primeiro lugar, imaginemos que você necessite várias vezes em seu programa imprimir a mensagem "Pressione a tecla ENTER" e esperar que o usuário tecle ENTER, caso o usuário tecle algo diferente o programa deve imitir um BEEP.

Você pode fazer um laço de WHILE sempre que isto fosse necessário.

Uma alternativa é criar uma função. Com o uso de funções, este processo de repetição fica simplificado. Observe o exemplo a seguir.

#include <conio.h>
#include <dos.h>
#include <stdio.h>

void EsperaEnter()  // Definição da função "EsperaEnter"
{
int tecla;
printf("Pressione ENTER\n");
do
{
tecla = getch();
if (tecla !=13) // Se nao for ENTER
{
sound(700); // Ativa a emissão de um BEEP
delay(10);  // Mantém a emissão do som por 10 ms
nosound();  // Para de emitir o som
}
} while(tecla != 13); // 13 e' o codigo ASCII do ENTER
}

void main()  
{
EsperaEnter();      // Chamada da função definida antes
// ...........
EsperaEnter();      // Chamada da função definida antes
// ...........
EsperaEnter();      // Chamada da função definida antes
}


Formato Geral de uma Função em C


tipo_da_funcao  NomeDaFuncao (Lista_de_Parametros)
{
    // corpo da função
}


A Lista_de_Parametros, também é chamada de Lista_de_Argumentos, é opcional.


Parâmetros


A fim de tornar mais amplo o uso de uma função, a linguagem C permite o uso de parâmetros. Este parâmetros possibilitam que se definida sobre quais dados a função deve operar. A função sound(freq), por exemplo, recebe como parâmetro a freqüência do som a ser gerado, permitindo que se defina seu comportamento a partir deste valor.

Para definir os parâmetros de uma função o programador deve explicitá-los como se estive declarando uma variável, entre os parênteses do cabeçalho da função. Caso precise declarar mais de um parâmetro, basta separá-los por vírgulas. No exemplo a seguir temos a função SOMA que possui dois parâmetros, sendo o primeiro um float e o segundo um int.

void SOMA(float a, int b)  // basta separar por vírgulas
{
   float result;     // a declaração de variáveis é igual ao que
// se faz na função main
   result = a+b;
   printf("A soma de %6.3f com %d é %6.3f\n, a,b,Result);
}


Os parâmetros da função na sua declaração são chamados parâmetros formais. Na chamada da função os parâmetros são chamados parâmetros atuais.

Os parâmetros são passados para uma função de acordo com a sua posição. Ou seja, o primeiro parâmetro atual(da chamada) define o valor o primeiro parâmetro formal (na definição da função, o segundo parâmetro atual define o valor do segundo parâmetro formal e assim por diante. Os nomes dos parâmetros na chamada não tem relação com os nomes dos parâmetros na definição da função.

No código a seguir, por exemplo, a função SOMA é chamada recebendo como parâmetros as variáveis "b" e "a", nesta ordem.

#include <stdio.h>

void SOMA(float a, int b)  // basta separar os parâmetros por vírgulas
{
   float result;     // a declaração de variáveis é igual ao que
// se faz na função main
   result = a+b;
   printf("A soma de %d com %6.3f é %6.3f\n, a,b,Result);
}

void main()
{
int a;
float b;

a = 10;
b = 12.3;
SOMA(b,a);  // Chamada da função SOMA(12.3,10)
}


O resultado do programa é a impressão da seguinte mensagem: A soma de 12.300 com 10 é 22.300

Fonte: www.inf.pucrs.br
Links patrocinados
Últimos artigos do editor

software.jpg Usabilidade: Bom modelo c.
Um bom modelo conceitual per.
hackers.jpg Linguagens Formais
Entende-se por Teoria das Li.
hackers.jpg Programação de computador.
Programação é o processo de .
SO.jpg PCI Express
PCI Express (também conhecid.
c_sharp.jpg Curso de C#: Lição 18: Ov.
Esta lição mostra como a sob.
SO.jpg Processador Intel® Core™2.
No dual-core da tecnologia d.

Compartilhe:
    Adicionar artigo no dihitt    Adicionar artigo no domelhor    Adicionar artigo no linkk    Adicionar artigo no rec6    Adicionar artigo no technorati
Opinião do leitor:
1 Comentário(s)

 Daniel Ferreira comentou:

Muito bom o artigo. Vi agora porque os programadores dão tanta atenção a isso. Só tive um pequeno problema ao compilar esse último algoritmo. O compilador apontou a necessidade da função ser INT ao invés de VOID.

Publicado em: 19/06/2008 - 19:27

Acesso restrito
Destaques
Desabilitando Processos no Windows Desabilitando Processos no Windows
Veja como desabilitar alguns processos do windows
Layouts Free Layouts Free
Confira a nossa coletânea de layouts prontos para uso. Diversas categorias para você escolher.
Você controla seu tempo em atividades? Você controla seu tempo em atividades?
Nos tempos de hoje sempre há necessidade de produtividade em níveis elevados
Autor
Tags
Artigos Relacionados
Novos Artigos
Notícias Relacionados

© 2005 - 2008 - Oficina da Net - v 3.0 - É proibida a reprodução parcial ou completa do conteúdo deste site sem autorização por escrito. Resolução adequada: 1024x768px.