Bien... no tienes que poner
#include<primero.cpp>
en todo caso seria
#include "primero.cpp"
pero tampoco tienes que hacer eso... pues seria como estarse incluyendo el mismo codigo al mismo archivo... No dije que sea incorrecto... no, es correcto pero no es lo mas viable...
Lo mas viable y mas facil es declarar, solo declarar la funcion que esta en el primer archivo, repito, declararla en el segundo archivo... Esto es para que si se compila el segundo archivo para verificar errores de sixtaxis no diga que la funcion que se manda a llamar (que esta en el primer archivo) no existe... Pues como se declaro, el compilador se da por enterado que en alguna parte del programa existe la funcion...
Los archivos quedarian de la siguiente forma:
/******** primero.cpp *******/
#include"segundo.cpp"
void main()
{
//Codigo ejecutable
llamar_a_segundo();
//Mas codigo ejecutable
}
void se_llama_desde_segundo()
{
//Codigo de la funcion
}
/***** fin de primero.cpp *****/
Esto es el codigo que estaria en el primer archivo. Veamos ahora el codigo que estaria en el segundo archivo...
/******** segundo.cpp *******/
//Solo se declara la funcion al principio
//o antes de usarla...
void se_llama_desde_segundo();
void llamar_a_segundo()
{
//Aqui puede haber codigo ejecutable
//Se llama a la funcion se_llama_desde_segundo(); que esta en primero.cpp
se_llama_desde_segundo();
//Aqui puede haber mas codigo ejecutable
}
/***** fin de segundo.cpp *****/
Bien... Estas lineas las probe en el compilador Turbo C++ 3.0 de Borland... y las anexe en un zip adjuto...
Descomprimelas y colocalas en donde tengas instalados el Compilador que uses... de esta forma no necesitaras modificar la ruta en la cabecera del primer archivo...
Para que veas como funciona y en que orden se va ejecutando, ya que tengas abierto el archivo primero.cpp en tu compilador presiona F7 una y otra ves para que se ejecute linea por linea... hasta llegar al fin del programa...
Cualquier duda que haya quedado haganla saber... Suerte y hasta la proxima...