Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Treba mi pomoc oko pokazivaca ili pointera!!!

[es] :: C/C++ programiranje :: C/C++ za početnike :: Treba mi pomoc oko pokazivaca ili pointera!!!

[ Pregleda: 2729 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

vladaboy93
Vladimir Makaric
Novi Sad

Član broj: 137777
Poruke: 376
*.44.eunet.yu.

Sajt: vladimirmakaric.110mb.com


Profil

icon Treba mi pomoc oko pokazivaca ili pointera!!!27.06.2007. u 22:38 - pre 204 meseci
Ucim C++ iz knjige i Dosad mi je sve bilo jasno dok nisam stigo do pointera to mi nekako neulazi u glavu:

Za cega i kada se oni koriste?
I kako se oni definisu i koriste?

Ako bi neko mogo detaljno da mi objasni....na jednostavan nacin

Unapred ZahvalaN!!!
 
Odgovor na temu

NastyBoy
Bojan Nastic
UK

Član broj: 12041
Poruke: 895
*.plus.com.



+4 Profil

icon Re: Treba mi pomoc oko pokazivaca ili pointera!!!28.06.2007. u 00:03 - pre 204 meseci
1. Pretraga ovog foruma -> rezultati vec na prvoj strani
2. Google -> milion rezultata
3. Pravopis i gramatika srpskog jezika, ponavljacesh 8. razred
 
Odgovor na temu

vladaboy93
Vladimir Makaric
Novi Sad

Član broj: 137777
Poruke: 376
*.46.eunet.yu.

Sajt: vladimirmakaric.110mb.com


Profil

icon Re: Treba mi pomoc oko pokazivaca ili pointera!!!28.06.2007. u 09:56 - pre 204 meseci
Sa ovim ovde tipom gore ne vredi ni raspravljati....... ako on oce druge da vredja, sto se spustati na njegov nivo......


 
Odgovor na temu

Sladjan2S
RS

Član broj: 68050
Poruke: 121
*.teol.net.



Profil

icon Re: Treba mi pomoc oko pokazivaca ili pointera!!!28.06.2007. u 14:16 - pre 204 meseci
Citat:
vladaboy93
I kako se oni definisu i koriste?


O tome kako se oni koriste mozes vidjeti na http://www.cplusplus.com/doc/tutorial/pointers.html

 
Odgovor na temu

vladaboy93
Vladimir Makaric
Novi Sad

Član broj: 137777
Poruke: 376
*.8.eunet.yu.

Sajt: vladimirmakaric.110mb.com


Profil

icon Re: Treba mi pomoc oko pokazivaca ili pointera!!!28.06.2007. u 14:48 - pre 204 meseci
Hvala na linku ali nazalost isto tako je objasnjeno u mojoj knjizi

Ako bi neko mogao svojim recima da mi kaze cemu sluze pokazivaci... i kako da ih koristim?



[Ovu poruku je menjao X Files dana 28.06.2007. u 16:50 GMT+1]
 
Odgovor na temu

Yu Raider
Ivan Djordjevic
Bg

Član broj: 40731
Poruke: 273
*.dynamic.sbb.co.yu.



+2 Profil

icon Re: Treba mi pomoc oko pokazivaca ili pointera!!!29.06.2007. u 12:28 - pre 204 meseci
Evo ti kratko objašnjenje pošto moram da palim u grad :D

Dakle, sigurno si već u svojoj knjizi pročitao da se pointeri definišu kao "pokazivači na memorijsku adresu". Da, znam kako to zvuči :D.
Suština pointera je - oni ne sadrže vrednost. Ti si navikao da u paskalu napraviš neku integer promenljivu i, recimo, dodeliš joj vrednost 3. Takva promenljiva zauzme mesto u memoriji na određenoj memorijskoj adresi. Pointeri ne sadrže vrednost, nego poziciju memorijske adrese.

Evo primera u C-u, odnosno C++-u:
Code:

int a = 4; // a = 4
int *b = &a; // b = &a , ovo & je tzv. reference operator, odnosno operator koji uzima memorijsku adresu neke promenljive

cout << a << endl;
cout << b << endl;


Primetićeš da se u prvom redu ispisuje broj 4, a u drugom neku bezveznu heksadecimalnu vrednost. Ta vrednost je memorijska adresa tvoje promenljive a.
E sad, sve je to cool i pointeri služe za manipulaciju memorijskim adresama. Ali, šta će to tebi? Pa, evo ti jednostavan odgovor.

Code:

int a = 4;
int *b = &a;

*b = 8; // ovo je tzv. dereference operator, odnosno operator koji uzima vrednost iz memorijske adrese neke promenljive
cout << a << endl;


Ovde primećuješ da si promenio vrednost b (koji je pointer na promenljivu a), a da se zapravo promenila promenljiva a!
Što znači da kada ti treba recimo, funkcija za sabiranje, pointeri su jako korisni jer:

Code:


int DodajJedan(int a)
{
   return a + 1;
}

void DodajJedanPrekoPointera(int* a)
{
  *a += 1;
}

int main()
{
 int broj = 5;
 DodajJedan(broj);
 DodajJedanPrekoPointera(&broj);
}


Ovde će nakon manipulacije promenljiva broj sadržati vrednost 6. Kada baciš oko na kod, vidiš da funkcija koja dodaje 1 na promenljivu preko pointera nema povratnu vrednost, već direktno manipuliše promenljivom. To povećava brzinu izvršavanja tvog programa i smanjuje zauzeće memorije. Naravno, u ovom slučaju to ti ne pomaže mnogo, ali u radu sa velikim količinama memorije pointeri su nezamenljivi.

Pointeri, međutim, mogu biti jako opasni ukoliko se ne koriste kako treba.
Ovo su ti samo neke osnovne informacije, ima tu još mnogo toga, pa ako hoćeš, pošalji mi PM pa da ti dam MSN adresu ili nešto slično ako ti treba neko dodatno objašnjenje.

Pozdrav





SLIder.
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: Treba mi pomoc oko pokazivaca ili pointera!!!

[ Pregleda: 2729 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.