Vi fəsil. C++ dilində proqramlaşdırma


Göstəricilər üzərində əməllər. Göstəricilərin funksiyanın parametrləri kimi istifadə olunması



Yüklə 1,02 Mb.
səhifə33/74
tarix04.01.2023
ölçüsü1,02 Mb.
#121980
1   ...   29   30   31   32   33   34   35   36   ...   74
Alqoritmik dillər(C kitab) (10)

Göstəricilər üzərində əməllər. Göstəricilərin funksiyanın parametrləri kimi istifadə olunması
İfadə və operatorlarda göstəricilərin qiymətlərinin dəyişməsi tipin ölçüsünə uyğun olmalıdır.
Bu qaydanı yuxarıda göstərilən göstəricilər üçün nümayiş etdirək.
pti=pti+2; və ya pti++;
Bu operatorların yerinə yetirilməsi nəticəsində pti-göstəricisinin qiyməti 2 vahid artır və FFC2-qiymətini alır. pti-- operatorunun yerinə yetirilməsi nəticəsində göstəricinin qiyməti 2 vahid azalır və FFBE-yə bərabər olur.
Digər tipə malik olan göstəricilər üçün də yazmaq olar:
ptc++; göstəricinin qiymətini 1 vahid artır;
ptf++; göstəricinin qiyməti 4 vahid artır.
Funksiyanın parametrlərinin ötürülməsi üçün də göstəricilərdən istifadə etmək olar.
Yuxarıda biz ancaq müraciət edən proqramın faktiki parametrlərinin müraciət edilən funksiyanın formal parametrlərinə bir tərəfli ötürülməsinə baxmışdıq. Qaytarılan qiyməti funksiya özü müəyyən edir. Buradan belə alınır ki funksiyanın yerinə yetirilməsi zamanı müraciət edən proqramdaki dəyişənlərin qiymətlərini dəyişmək olmaz. Funksiyaların parametrləri olaraq göstəricilərdən istifadə etməklə bu qaydanı nəzərə almamaq olar.

Aşağıdaki misalda swap( ) funksiyası göstəricilərlə verilən iki dəyişənin qiymətlərinin dəyişməsini təmin edir:


void swap(int*a, int*b)
{int c;
c=*a; *a=b; *b=c;
}
Əsas proqramda isə aşağıdaki fraqment vardır:
int x=1, y=2;
swap(&x, &y);
cout<<”\nx=”<
Nəticədə ekranda aşağıdaki qiymətlər görsənəcək:
x=2 y=1
-yəni x və y dəyişənlərinin qiymətləri dəyişdi. Funksiyaya müraciətdən sonra a göstəricisi x-dəyişəninin ünvanı alır, b-göstəricisi y-dəyişəninin ünvanını alır. Bundan sonra əsas proqramda x-dəyişəni və *a göstəricisi yaddaşın eyni bir oyuğu ilə əlaqələndirilir. Eləcə də y*b.


Yüklə 1,02 Mb.

Dostları ilə paylaş:
1   ...   29   30   31   32   33   34   35   36   ...   74




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin