[ sheff @ 05.05.2009. 17:11 ] @
Cilj mi je preusmjeriti pointer sa pocetka niza na neki odabrani clan niza, ali bez upotrebe povratnih vrijendosti funkcije getPok. dakle treba da baratam sa originalnim memorijskim lokacijama podataka iz funkcije main. Sta sad ovde ne valja: Code: #include<iostream> using namespace std; void unos(int* niz){ for(int i=0; i<(5); i++){ cout<<"unesite "<<i+1<<". clan niza: "; cin>>niz[i]; } } void ispis(int* niz){ for(int i=0; i<(5); i++){ cout<<i+1<<". clan niza je: "<<niz[i]<<endl; } } void getPok(int* niz, int* pot, int* i){ cout<<"unesite clan niza na koji zelite usmjeriti pokazivac"; cin>>*i; cout<<*pot<<" --- "<<pot<<endl; cout<<niz[((*i)-1)]<<" a1 "<<&niz[((*i)-1)]<<endl; pot=&niz[((*i)-1)]; cout<<*pot<<" a2 "<<pot<<endl; } void main(){ int niz[5]; int* poks=&niz[0]; int* i=NULL; unos(niz); cout<<"=========="<<endl; ispis(niz); cout<<"=========="<<endl; void (*pok)(int*, int*, int* ); pok=&getPok; cout<<*poks<<" b1 "<<poks<<endl; pok(niz, poks, i);//<<endl; cout<<*poks<<" b2 "<<poks<<endl; } |