Butun, haqiqiy


Download 1.28 Mb.
bet14/22
Sana15.06.2023
Hajmi1.28 Mb.
#1479408
1   ...   10   11   12   13   14   15   16   17   ...   22
Bog'liq
C tilida o‘zgarmaslar

void ko‘rsatkich
¡ int i; // butun o‘zgaruvchi
¡ const int ci=1; // butun o‘zgarmas
¡ int * pi; // butun o‘zgaruvchiga ko‘rsatkich
¡ const int *pci; // butun o‘zgarmasga ko‘rsatkich
¡ nt *const cp=&i; //butun o‘zgaruvchiga o‘zgarmas ko‘rsatkich
¡ const int*const cpc=&ci; // butun o‘zgarmasga o‘zgarmas ko‘rsatkich

26. Adresni olish qanaday amalga oshiriladi?



Turli kompyuterlarda xotirani adreslash turlicha qoida asosida tashkil etiladi. Ko‘p hollarda dasturchilar uchun biror bir o‘zgaruvchini aniq adresini bilish zarur emas. Zarurat tug‘ilganda bunday axborotni adres operatori (&) yordamida olish mumkin. Dasturning har bir o‘zgaruvchisi o‘zining adresiga egadir. Bu adresni saqlash uchun esa o‘zgaruvchiga ko‘rsatkich e’lon qilish kerak. Adresning o‘zining qiymatini bilish esa unchalik shart emas.
Adresni olish quyidagicha e’lon qilinadi:
& ;
Bu erda <tur> - adresi olinadigan qiymatning turi, - adres oluvchi o‘zgaruvchi nomi. O‘rtadagi ‘&’ belgisiga adresni olish amali deyiladi.
Bu ko‘rinishda e’lon qilingan o‘zgaruvchi shu turdagi o‘zgaruvchining sinonimi deb qaraladi. Adresni olish amali orqali bitta o‘zgaruvchiga har xil nom bilan murojaat qilish mumkin bo‘ladi.
Misol: int kol;
int & pal=kol;  // pal murojaati, u kol o‘zgaruvchisining alternativ nomi
const char & cr=’\n’; // cr - o‘zgarmasga murojaat
Adresni olish amalini ishlatishda qoidalarga rioya qilish
¡ Adresni olish amalini ishlatishda quyidagi qoidalarga rioya qilish kerak: adres oluvchi o‘zgaruvchi funksiya parametri sifatida ishlatilgan yoki extern bilan tavsiflangan yoki sinf maydoniga murojaat qilingandan holatlardan tashqari barcha holatlarda boshlang‘ich qiymatga ega bo‘lishi kerak.
¡ Adresni olish amali asosan funksiyalarda adres orqali uzatiluvchi parametrlar sifatida ishlatiladi.
¡ Adres oluvchi o‘zgaruvchining ko‘rsatkichdan farqi shundaki, u alohida xotirani egallamaydi va faqat o‘z qiymati bo‘lgan o‘zgaruvchining boshqa nomi sifatida ishlatiladi.

27. new operatori vazifasi?


Xotiraning ob’yektlar o‘rtasidan dinamik taqsimlanuvchi sohasidan joy ajratish uchun new operatori ishlatiladi. new operatoridan keyin xotiraga joylashtiriladigan ob’yekt tipini ko‘rsatish lozim. Bu ob’yektni saqlash uchun talab etiladigan xotira sohasi o‘lchovini aniqlash uchun kerak bo‘ladi. Masalan, new unsigned short int deb yozish orqali biz dinamik taqsimlanuvchi xotiradan ikki bayt joy ajratamiz. Xuddi shuningdek, new long satri orqali to‘rt bayt joy ob’yektlar o‘trasida dinamik taqsimlanuvchi sohadan ajratiladi.
new operatori natija sifatida belgilangan xotira yacheykasining adresini qaytaradi. Bu adress ko‘rsatkichga o‘zlashtirilishi lozim. Masalan, unsigned short tipidagi o‘zgaruvchi uchun dinamik sohadan joy ajratish uchun quyidagi dastur kodi yoziladi:
unsigned short int *pPointer;

Download 1.28 Mb.

Do'stlaringiz bilan baham:
1   ...   10   11   12   13   14   15   16   17   ...   22




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling