Hello!!! Czytał ktośtu może Symfonie?? Mam takie pytanie na 103 stronie w I Tomie Pan Jurek napisał program skłądający się z 3 plików. Afryka.cpp, europa.cpp i plik nagłówkiowy nagl.h i nie mogętego zlinkować w Turbo C++??
Oczywiście to pierwsze pytanie jest retoryczne, mam racje?
Ja czytałem. Pewnie jak większość tutaj. ;-) Ale komuś chyba pożyczyłem pierwszy tom, bo nie mogę go znaleźć.
Wygląda na to, że chyba nie zinkludowałeś pliku nagłówkowego. Nie pamiętam przykładu, jak znajdę to powiem Tobie więcej. A jaki błąd wywala linker?
Oto kody źródłowe plik afryka.cpp, europa.cpp i nagl.h:
europa.cpp
#include <iostream.h>
#include "nagl.h"
int ile_europejczykow = 8 ;
/******************************************************/
void funkcja_francuska()
{
cout << "Jestem w Paryzu ! ***********\\n";
cout << "Na swiecie jest " << ile_muzynow
<< " muzynow, 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();
}
/******************************************************/
afryka.cpp
#include <iostream.h>
#include "nagl.h"
int ile_murzynow = 9 ;
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
<< " europejczykow \\n";
}
/**************************************************/
plik nagłówkowy nagl.h
extern int ile_murzynow ;
extern int ile_europejczykow ;
void funkcja_egipska() ;
void funkcja_kanijska();
void funkcja_francuska();
void funkcja_niemiecka();
Mam kompilator Turbo C++ co mam z tym zrobić żeby zadziałało??
Cóż, sprawdziłem ten kod u siebie i działa, po kilku drobnych zmianach. Masz literówki w kodzie.
Spróbuj teraz:
- afryka.cpp
#include <iostream.h>
#include "nagl.h"
int ile_murzynow = 9 ;
void 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
<< " europejczykow \\n";
}
/**************************************************/
- europa.cpp
#include <iostream.h>
#include "nagl.h"
int ile_europejczykow = 8 ;
/******************************************************/
void funkcja_francuska()
{
cout << "Jestem w Paryzu ! ***********\\n";
cout << "Na swiecie jest " << ile_murzynow
<< " muzynow, 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
extern int ile_murzynow ;
extern int ile_europejczykow ;
void funkcja_egipska() ;
void funkcja_kenijska();
void funkcja_francuska();
void funkcja_niemiecka();
Jeśli to nie wina tychże literówek to pomyślimy dalej, ale radzę spróbować i sprawdzić czy teraz działa. ;-)
PS - tutaj również zajrzyj: http://4programmers.net/file.php?id=223
Nadal wyskakują Errory??! Ale skąd kompilator może wiedziećź że to o te pliki chodzi jak nie są podane ich nazwy?? To troche dziwne?! A podczas linkowania mam zlinkować tylko główny plik afryka.cpp?? A co z tym plikiem nagłówkowym?? Jak go sie linkuje?
Pomóżcie prosze!?!? Jak ja mam to zlinkować?? Może coś jeszcze z tym nagl.h tcza zrobić?? Nie wiem zlinkować osobno czy coś? Nadal blędy wyskakują :
Error afryka.cpp 29: Ned an identifier to declare
Error afryka.cpp 29: , expected
Error afryka.cpp 29: Declaration missing ;
Error afryka.cpp 29: Declaration was expected
Jak mam się z tym uporać?
THX z góry