Sie sind auf Seite 1von 2

www.tiexpert.

net

Pg. 1 de 2

Prottipos de funes
A prototipagem uma tcnica muito utilizada em programas criados em C/C++. Como j vimos, tudo em C/C++ uma funo e a funo executada quando criamos um programa o MAIN. O problema quando temos muitas funes. Como toda funo deve ser compilada primeiro que o MAIN para que esta possa ser utilizada, muitas vezes acabamos escrevendo inmeras linhas de cdigo nas, provveis, 20 ou 30 funes e esquecemos a funo principal do programa. Isso acaba gerando uma certa dificuldade de navegao pelo cdigo - quando acontece isso dizemos que o cdigo est poludo. Ento, do que se trata, realmente, a prototipagem de funes!? Quando criamos um prottipo de uma funo, estamos, na verdade, declarando uma funo. Ou seja, voc indica para o MAIN que tal funo existe, mas o cdigo dela est em outro lugar. Dessa forma o programa fica muito mais fcil de ler e facilmente chegamos at a funo MAIN (que o que realmente nos interessa). Para criar um prottipo de uma funo a mesma coisa de criar uma funo. A direfena que, ao invs, de abrirmos um bloco de cdigo ( { } ), terminamos a linha com ponto-evrgula (;). E o cdigo da funo que deveramos ter colocado no comeo colocado aps a funo MAIN. Ele ficaria assim: PROTTIPO DA FUNO 1; MAIN () { bloco de dados } FUNO 1 { bloco de dados } Pronto! Basicamente, s trocamos a funo de lugar. Vamos ver isso em um exemplo: #include <iostream> #include <cstdlib> using namespace std; //criando o prottipo de 4 funes int somar (int x, int y); int subtrair (int x, int y); int multiplicar (int x, int y); int dividir (int x, int y); //a funo principal int main (void){ int valor1, valor2, resSom, resSub, resMult, resDiv; cout <<"Digite o 1o valor: "; cin >> valor1; cin.ignore(); cout <<"Digite o 2o valor: "; cin >> valor2; cin.ignore (); //chamando todas as funes resSom=somar (valor1, valor2); resSub=subtrair (valor1, valor2); resMult=multiplicar (valor1, valor2); resDiv=dividir (valor1, valor2);

http://www.tiexpert.net/programacao/c/prototipos.php

www.tiexpert.net
//mostrando os resultados guardados system ("cls"); cout <<valor1<<" + "<<valor2<<" = "<<resSom<<"\n"; cout <<valor1<<" - "<<valor2<<" = "<<resSub<<"\n"; cout <<valor1<<" * "<<valor2<<" = "<<resMult<<"\n"; cout <<valor1<<" / "<<valor2<<" = "<<resDiv<<"\n\n"; system ("pause"); return EXIT_SUCCESS; } //As funes int somar (int x, int y){ return x+y; } int subtrair (int x, int y){ return x-y; } int multiplicar (int x, int y){ return x*y; } int dividir (int x, int y){ return x/y; }

Pg. 2 de 2

Veja como o cdigo est simples. Temos uma parte destinada a declarar as funes (prottipos) e logo aps temos a funo principal que o programa. Logo abaixo da funo principal esto as funes secundrias. Isso prototipagem de funes.
Autor: Denys William Xavier Este artigo est sob Licena Creative Commons Para ver uma cpia desta licena, visite http://creativecommons.org/licenses/by-nc-sa/2.5/br/ ou envie uma carta para Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.

http://www.tiexpert.net/programacao/c/prototipos.php

Das könnte Ihnen auch gefallen