Por ejemplo en este ejercicio
#include <iostream>
using namespace std;
//si lo pongo por aki si funciona
int main()
{
int resultado = 0;
int entrada;
cout << "Escriba un numero entre 0 y 100 para duplicarlo: ";
cin >> entrada;
cout << "\nAntes de llamar al Duplicador... ";
cout << "\nentrada: " << entrada << "\nduplicada: " << resultado << "\n";
resultado = Duplicador(entrada);
cout << "\nRegresando del Duplicador...\n";
cout << "\nentrada: " << entrada << "\nDuplicada: " << resultado << endl;
return 0;
}
int Duplicador(int); // si lo pongo aki no..
int Duplicador(int eloriginal)
{
if (eloriginal <= 100)
return eloriginal * 2;
else
return -1;
cout << "No se puede llegar asta ahi" << endl;
}
como comento en el codigo si lo pongo entre using namespace std y main compila bien, pero si lo pongo en otro lugar no.. q pasa llevan orden?
Es antes del main donde hay que poner los prototipos.
Al intentar compilarlo (sin el prototipo antes del main) seguramente te dirá que no encuentra la función.
Ok. bueno y hablando de prototipos tengo entendido q los puedo meter en un archivo(noce si necesite extensión .h) he incluirlo con #include <>. Como necesita estar estructurado ese archivo? nomas es incluir los prototipos en forma lista y ya?
tienes que meterlo en un archivo .h con esta estructura
#ifndef NOMBRE_ARCHIVO
#define NOMBRE_ARCHIVO
//Tus declaraciones
#endif
Ahi solo debes poner declaraciones y prototipos, y luego en el archivo cpp debes poner #include"nombre_archivo.h" y no #include<nombre_archivo.h>
Un saludo.
Cita de: Synth3tik0 en 3 Agosto 2011, 23:31 PMcomo comento en el codigo si lo pongo entre using namespace std y main compila bien, pero si lo pongo en otro lugar no.. q pasa llevan orden?
No.
Los prototipos de las funciones no deben necesariamente ir en una parte determinada del programa.
Lo que si se debe cumplir es: deben estar colocados antes del uso (llamada) de la funcion correspondiente. Eso se cumple colocandolos (lo usual) antes de toda definicion.
Por ejemplo:
#include <iostream>
using std::cin;
using std::cout;
// etc
// Prototipos de funciones
// Definicion de funciones empezando por la principal
int main()
{
// ...
return 0;
}
// Mas definiciones ...
Un saludo