void wyszukaj() //<-czyli wyszukaj w pliku (dobre :-) )
{
string imie [100] ;
string nazwisko [100];
string miasto [100];
string ulica [100];
string numer [100];
int nr_linii;
int nr;
string linia;
int wyszukaj;
cout<<"Podaj nazwisko:";
cin>> wyszukaj;
// transform(szukaj.begin(),szukaj.end(),szukaj.begin(),::toupper);
fstream plik;
plik.open("Spis.txt", ios::in);
if(plik.good()==false)
{
cout<<"Blad. Nie znaleziono pliku Spis.txt"<<endl;
Sleep(600);
exit(0);
}
while(getline(plik,linia))
{
switch(nr_linii)
{
case 1: imxie[nr]=linia;
case 2: nazwisko[nr]=linia;
case 3: miasto[nr]=linia;
case 4: ulica[nr]=linia;
case 5: numer[nr]=linia;
}
if(nr_linii==5)
{
nr_linii=0;
nr++;
}
nr_linii++;
}
plik.close();
for(int i=0;i<=nr; i++)
{
if(wyszukaj=="nazwisko"[i])
{
cout<<"Imie:"<<imie[i]<<endl;
cout<<"Nazwisko:"<<nazwisko[i]<<endl;
cout<<"Miasto:"<<miasto[i]<<endl;
cout<<"Ulica:"<<ulica[i]<<endl;
cout<<"Numer telefonu to:"<<numer[i]<<endl;
}
}
getch();
}};
0
0
Gdzie nadajesz wartość zmiennej nr_linii
1
Korzystaj z formatera: http://format.krzaq.cc, bo takie wcięcia to dodatkowe źródła błędu.
int nr_linii;
int nr;
...
switch(nr_linii)
A niby skąd pochodzi wartość nr_linii
i nr
? I nie, sama deklaracja nie powoduje, że zmienna ma jakąś określoną wartość (z wyjątkiem zmiennych statycznych).
Przy każdym case
powinno być break
, bo inaczej np. gdy nr_linii == 1
to wykonują się wszystkie instrukcje dla 1, 2, 3, 4, 5.
1
Ten kod się kompiluje, z niezadeklarowaną zmienną?
case 1: imxie[nr]=linia;