Dinamik massivni e'lon qilish va ishga tushirish Massiv elementlariga kirish


Manzillar ustidagi arifmetik amallar



Download 476,35 Kb.
bet6/12
Sana21.07.2022
Hajmi476,35 Kb.
#835046
1   2   3   4   5   6   7   8   9   ...   12
Bog'liq
Kurs ishi 2 260622081439

Manzillar ustidagi arifmetik amallar.
C tilidagi manzillarda quyidagi amallar aniqlanadi:
yig'ish, siz ko'rsatkichga butun son qo'shishingiz mumkin;
ayirish, siz ko'rsatkichlarni ayirish yoki ko'rsatgichdan butun sonni ayirish mumkin.
Biroq, arifmetik amallarni bajarishda ba'zi o'ziga xosliklar mavjud. Keling, ularni quyidagi misolda ko'rib chiqaylik.


double *p1;*p2;*i;++++;++;
}

p1++ operatsiyasi adresni 8 ga, p2++ operatsiyasi adresni 4 ga, i++ amali esa 2 ga oshiradi. Manzil arifmetik amallari quyidagicha bajariladi:


oshirish amali koʻrsatgichni asosiy turdagi keyingi obʼyektga yuborishga sabab boʻladi (p1 uchun u double, p2 uchun bu float, i uchun int);
pasaytirish operatsiyasi ko'rsatgichni oldingi asosiy turdagi ob'ektga murojaat qilishiga olib keladi;
p1=p1+n operatsiyasidan so‘ng ko‘rsatkich n ta asosiy turdagi ob’ektlarga o‘tkaziladi; p1+n, go‘yo massivning n-elementiga murojaat qiladi, agar p1 boshining manzili bo‘lsa. massiv.


1.6 Dinamik massivlar bilan ishlashda manzillar va ko'rsatkichlardan foydalanish


C tilidagi ko'rsatkichlardan foydalanib, ma'lum turdagi ma'lumotlarni saqlash uchun ma'lum hajmdagi xotira maydonini (dinamik massiv) ajratishingiz mumkin. Buning uchun siz quyidagi amallarni bajarishingiz kerak:


. Muayyan turdagi ko'rsatkichni (masalan, p o'zgaruvchisi) tavsiflang.
. Ko'rsatgich tomonidan ko'rsatilgan manzildan boshlab, ma'lum o'lchamdagi xotira qismini ajratish uchun calloc, malloc yoki yangi operatsiyalardan foydalaning. Shundan so'ng, p ajratilgan xotira maydonining birinchi elementining manzili (massivning 0-elementi), p+1 manzili - ajratilgan xotira maydonidagi keyingi element (dinamik massivning 1-elementi), & , p+i - i-elementning manzili.
Siz faqat ajratilgan xotira maydoni chegaralaridan tashqariga chiqmasligingizga ishonch hosil qilishingiz kerak.
Dinamik p massivning i-elementiga *(p+i) yoki p[i] ikkita usuldan birida kirish mumkin.
. Xotiraning bir qismi endi kerak bo'lmaganda, uni free() funksiyasi, o'chirish operatsiyasi yordamida bo'shatish mumkin.
Dinamik o'zgaruvchilar bilan ishlash haqida batafsil ma'lumotga ega bo'lishdan oldin keling, calloc , malloc , realloc va free funksiyalarini hamda new va delete operatsiyalarini ko'rib chiqaylik .
Malloc funksiyasining yagona parametri baytlarda ajratilgan xotira maydoni hajmini belgilaydigan belgisiz butun son qiymatidir. Malloc funktsiyasi ajratilgan xotiraga tipsiz ko'rsatkichni (void *) qaytaradi. malloc funktsiyasini chaqirish o'xshaydi
*malloc(n);

bu yerda n ajratilgan xotira maydoni hajmini baytlarda belgilaydi, agar xotira taqsimoti bajarilmagan bo'lsa, funksiya NULL qiymatini va ajratish muvaffaqiyatli bo'lsa, ajratilgan xotira maydoniga ko'rsatgichni qaytaradi.



Download 476,35 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   12




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish