Skocz do zawartości

Błąd podczas kompilacji..


Will

Rekomendowane odpowiedzi

Mam problem z jednym zadaniem z symfoni. Podaje tutaj go. Chodzi o to, że program, który opisany jest w książce u mnie nie działa..(nawet ściągnąłem ze strony autora ten przykład i nic) Na mój gust powinno to być tak, że do pierwszego pliku dajemy include drugi plik cpp a tylko w drugim dajemy nagl.h.. Tak może i działa ale chce wiedzieć jak rozwiązać ten problem tak jak w książce.(tym systemem) Bardzo proszę o pomoc i z góry dziex :rolleyes:

 

// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

// Ten plik powinienes rozbic na trzy poniższe i dopiero

// te trzy poddac kompilacji.

// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

 

//##############################################

// Oto tresc pliku afryka.cpp :

//##############################################

 

#include <iostream>

using namespace std ;

 

#include "nagl.h"

int ile_murzynow = 9 ;

int main()

{

cout << "Poczatek programu\n" ;

funkcja_francuska();

funkcja_niemiecka();

cout << "Koniec programu \n" ;

}

/******************************************************/

void funkcja_egipska()

{

cout << "Jestem w Kairze !-------- \n" ;

cout << "Na swiecie jest " << ile_murzynow

<< " murzynow, oraz " << ile_europejczykow

<< " europejczykow \n" ;

}

/******************************************************/

void funkcja_kenijska()

{

cout << "Jestem w Nairobi ! --------\n" ;

cout << "Na swiecie jest " << ile_murzynow

<< " murzynow, oraz " << ile_europejczykow

<< " europejczyk˘w \n" ;

}

/******************************************************/

 

//##############################################

//----------- A oto plik europa.cpp :

//##############################################

 

#include <iostream>

using namespace std ;

 

#include "nagl.h"

int ile_europejczykow = 8 ;

/******************************************************/

void funkcja_francuska()

{

cout << "Jestem w Paryzu ! *********************\n" ;

 

cout << "Na swiecie jest "<< ile_murzynow

<< " murzynow, oraz "

<< ile_europejczykow << " europejczykow \n" ;

 

funkcja_egipska() ;

}

/******************************************************/

void funkcja_niemiecka(void)

{

cout << "Jestem w Berlinie ! *******************\n" ;

 

cout << "Na swiecie jest " << ile_murzynow

<< " murzynow, oraz "

<< ile_europejczykow << " europejczykow \n" ;

 

funkcja_kenijska();

}

/******************************************************/

 

//##############################################

//-------------- A tak wyglada zawartosc pliku nagl.h

//##############################################

 

extern int ile_murzynow ;

extern int ile_europejczykow ;

 

void funkcja_egipska() ;

void funkcja_kenijska() ;

void funkcja_francuska() ;

void funkcja_niemiecka() ;

 

 

 

 

 

 

/************************************************************

 

************************************************************/

Odnośnik do komentarza
Udostępnij na innych stronach

afryka.cpp

#include <iostream>
using namespace std;

#include "nagl.h"

int main()
{
cout << "Poczatek programu\n";
funkcja_francuska();
funkcja_niemiecka();
cout << "Koniec programu \n";
getch();
}
/******************************************************/
void funkcja_egipska()
{
cout << "Jestem w Kairze !-------- \n";
cout << "Na swiecie jest " << ile_murzynow
<< " murzynow, oraz " << ile_europejczykow
<< " europejczykow \n";
}
/******************************************************/
void funkcja_kenijska()
{
cout << "Jestem w Nairobi ! --------\n";
cout << "Na swiecie jest " << ile_murzynow
<< " murzynow, oraz " << ile_europejczykow
<< " europejczyk˘w \n";
}
/******************************************************/

europa.cpp

#include <iostream>
using namespace std;

#include "nagl.h"
int ile_europejczykow = 8;
int ile_murzynow = 12;
/******************************************************/
void funkcja_francuska()
{
cout << "Jestem w Paryzu ! *********************\n";

cout << "Na swiecie jest "<< ile_murzynow
<< " murzynow, oraz "
<< ile_europejczykow << " europejczykow \n";

funkcja_egipska();
}
/******************************************************/
void funkcja_niemiecka(void)
{
cout << "Jestem w Berlinie ! *******************\n";

cout << "Na swiecie jest " << ile_murzynow
<< " murzynow, oraz "
<< ile_europejczykow << " europejczykow \n";

funkcja_kenijska();
}

nagl.h

#include <conio.h>
extern int ile_murzynow;
extern int ile_europejczykow;

void funkcja_egipska();
void funkcja_kenijska();
void funkcja_francuska();
void funkcja_niemiecka();

 

Dodałem getch() i wywaliłem z afryka.cpp int ile_murzynow = 9, ponieważ z tym nie będzie działać gdyż już zmienna została zainicjalizowana w europa.cpp. Kod powyżej bez problemu mi się kompiluje i uruchamia. Te pliki dodaj do projektu, nie kompiluj ich z osobna każdego.

Odnośnik do komentarza
Udostępnij na innych stronach

A u mnie nie działa 0o

 

Deleting intermediate files and output files for project 'dzialaj - Win32 Debug'.

--------------------Configuration: dzialaj - Win32 Debug--------------------

Compiling...

europa.cpp

Linking...

europa.obj : error LNK2001: unresolved external symbol "void __cdecl funkcja_egipska(void)" (?funkcja_egipska@@YAXXZ)

europa.obj : error LNK2001: unresolved external symbol "void __cdecl funkcja_kenijska(void)" (?funkcja_kenijska@@YAXXZ)

LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main

Debug/dzialaj.exe : fatal error LNK1120: 3 unresolved externals

Error executing link.exe.

 

dzialaj.exe - 4 error(s), 0 warning(s)

 

Wyskakuje to co wcześniej miałem 0o nawet skopiowałem all i nic... Była próba kompilacji dev c++ i visual c++ 6.0

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...