dev.gamez.lv Forum Index dev.gamez.lv
Latvian Game Developers Community
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 

Norāde(pointer) * un Adreses operātors &

 
dev.gamez.lv Forum Index -> Iesācējiem
View previous topic :: View next topic  
Author Message
killyou



Joined: 17 Aug 2006
Posts: 24

PostPosted: Thu Nov 30, 2006 4:59 pm    Post subject: Norāde(pointer) * un Adreses operātors &

Es būtu ļoti pateicīgs, ja kāds īsi un saprotoši izstāstītu, kāda nozīme un kur var pielietot Norādes(pointer) un Adreses operātorus &. Lasiju par šiem abiem, be tomēr nesaprotu.
Back to top
View user's profile
GiGa
Indago Uzvarētājs
Indago Uzvarētājs


Joined: 25 Sep 2003
Posts: 887

PostPosted: Thu Nov 30, 2006 5:28 pm    Post subject:

Ar & operatoru var iegūt kāda objekta adresi. Piemēram:
Code:

int A;

int *pi = &A; //iekš pi noglabājam A adresi = "pi norāda uz A"

*pi = 5; //tam mainīgajam, uz kuru norāda pi, piešķiram vērtību 5.


Kā redzi piemērā, definējot mainīgo * norāda, ka tas būs pointers, tas ir: "int *" ir datu tips "pointers uz int tipa mainīgo".
Bet piemēra pēdējā rindiņā * ir "indirection operator". Rakstot "*pi" tas nozīmē "tas mainīgais, uz kuru norāda pi".


Kāpēc pointeri ir vajadzīgi? Pointeri ir ļoti spēcīgs instruments, bet viņu īsto spēku tik viegli uzreiz nesapratīsi un nav nemaz tik viegli to paskaidrot. Pagaidām pietiks, ja pateikšu virspusēji: galvenie pointeru pielietošanas veidi ir masīvi (statiskie un dinamiskie), kā arī mainīgo padošana uz funkciju pēc adreses - tā, lai tos varētu izmainīt no funkcijas iekšienes. Jo tālāk mācīsies programmēšanu, jo vairāk izmantošanas iespējas pamanīsi - gan šo divu jau minēto iespēju variācijas, gan pavisam jaunas.
Back to top
View user's profile Send e-mail
killyou



Joined: 17 Aug 2006
Posts: 24

PostPosted: Fri Dec 01, 2006 2:58 pm    Post subject:

Pladies liels Smile
baidzot pieleca, savādāk lasot tālāk pie vairākdimensiju masīviem tiek pielietots * un nesaprotu, kas tur īsti domāts. Bet tagat viss palika skaidrs.
_________________
Nesodiet mani, esmu tikai iesācējs iekš C++.
Back to top
View user's profile
Display posts from previous:   
dev.gamez.lv Forum Index -> Iesācējiem All times are GMT + 2 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group