Ііі. Есептің программасы



Pdf көрінісі
бет116/150
Дата21.05.2020
өлшемі1,13 Mb.
#70441
түріПрограмма
1   ...   112   113   114   115   116   117   118   119   ...   150
Байланысты:
baibaktina program

Көрсеткіш типтері: 
Егер  функцияда  int  типті  айнымалыға  көрсеткіш  болатын,  типті  параметр  қажет 
болса, ол Көрсеткіш типін int* деп көрсетеді. Мысалы: 
Void manipulatePointer(int* p); 
Ал егер сол типті айнымалыны хабарлағыныз келсе, онда * символын типіне емес, 
айнымалынын атына қосып жазу керек: 
Int *p,*p2; 
Бір  айнымалы-Көрсеткіштын  мәнін  екінші  айнымалы-Көрсеткішқа  меншіктеуге 
болады,  нәтижесінде  бірінші  айнымалыда  сақталған  адрес  екінші  айнымалыға 
көшіріледі: 
Мысалы: Егер р1 айнымалыда v1 айнымалының адресі болса, онда опeратор  
p2=p1;  бұл  адресті  р2  айнымалыға  меншіктейді  де,  ол  да  v1  айнымалыға 
Көрсеткіш болады. Егер v1 айнымалысы ішінде 42 саны болса, оператор: 
cout<<*p2; 
экранға 42 санын шығарады: 
Көрсеткіш-айнымалылары бар, меншіктеу операторын пайдалану. 
 
 
 
 
 
 
 
 
 
 
 
 
 
Мысал: 
Cin >>*p1; 
*p1=*p2+7; 
Cout <<*p1; 
пернетақтаған  int  типті  мәнді  орналастырады  де,  7  санын  қосады  және  нәтижесін 
шығарады. 
Мысал: Көрсеткіштерге қолданылатын негізгі операциялар: 
p1=p2 


Р1 
Р2 
Орындалмай тұрып: 
Орындалғаннан кейін: 


Р1 
Р2 
*p1=*p2 


Р1 
Р2 
Орындалмай тұрып: 


Р1 
Р2 
Орындалғаннан кейін: 


220 
 
//Көрсеткіштермен 
және 
динамикалық 
айнымалылармен 
орындалатын 
операцияларды демонстрациялау программасы// 
# include  
Using std:: cout; 
Using std::endl; 
Int main() 

Int *p1, *p2; 
p1=new int; 
*p1=42; 
p2=p1; 
cout <<”*p1==”<<*p1<
жолға көшу үшін endl немесе “\n” жазылуы мүмкін, ол   С++ версиясына 
байланысты 
cout <<”*p2==”<<*p2<
*p2=53; 
Cout <<”*p1==”<<*p1<
Cout <<”*p2==”<<*p2<
p1=new int; 
*p1=88; 
Cout<<”*p1==”<<*p1<
Cout<<”*p2==”<<*p2<
Cout<<”Hope you got the point of this example!\n”; 
Return 0; 

Диалог мысалы: 
*p1=
=42 
*p2=
=42 
*p1=
=53 
*p2=
=53 
*p1=
=88 
*p2=
=53 
Hope 
you 
got 
the 
point 
of 
this 



p1 
p2 
p1=new int; 
 

p1 
p2 

б 
 

p1 
p2 
42 
*p1=42; 
 
 
p1 
p2 
4
р2=р1; 
г 
 
 
 
 
5
*р2=53; 
д 
 
 
 
 

р1=new int; 

5
 
 
 
 
8
*р1=88; 
ж 
5
Int *p1, *p2; 

в 


221 
 
example! 
2.Массивтер-айнымалылар және көрсеткіштер- айнымалылар. 
Массив  типті  айнымалы  жадыдағы  массивтің  бірінші  элементінің  адресі  деп 
түсіндірілді.  Енді  сіздің  біліміңіз  айнымалы  басқа  айнымалының  адресін  іште 
сақтайтын  болса  ол  Көрсеткіш  деген  анықтамамен  толықтырылды.  Сондықтан 
С++-те  массив  типті  айнымалы,    массивтің  бірінші  индекстелген  айнымалысына 
Көрсеткіш деп түсінуге де болады. 
Мысал: 
//Массив типті айнымалы Көрсеткіш екенің  көрсететін программа// 
#include  
Using std::cout; 
Using std::endl; 
typedef int* InPtr; 
Int main() 

IntPtr p; 
Int a[10]; 
Int index; 
For (index=0; index<10;index++) 
a[index]=index; 
p=a; 
for (index=0; index<10;index++) 
cout<<
cout<<”\n”; 
for (index=0; index<10; index++) 
p[index]=p[index]+1;                     // P mассивінің элементтерің өзгерткенде 
for (index=0; index<10; index++) //а массивінің элементтері өзгеретіне 
cout<
cout<<”\n”; 
return 0; 

Диалог мысалы: 
0 1 2 3 4 5 6 7 8 9  
1 2 3 4 5 6 7 8 9 10 
А  int  типті  айнымалыға  Көрсеткіш  болғандық  (  a[0])  ,  а  айнымалының  мәнің  р 
Көрсеткіш айнмалыға меншіктеуге болады: р=a; 
Онда  р[0],p[1],…  өрнегі  ,бұл  а  массив  элементтеріне  a[0],a[1],…  сілтеме  болып 
табылады. 


Достарыңызбен бөлісу:
1   ...   112   113   114   115   116   117   118   119   ...   150




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет