Mavzu: Ob’ektlar massivi bilan ish yuritish.
Reja:
1.Ob'ektlar nima
2. Massivlar haqida tushuncha
3.dasturlash operatsion tizimlar
C (/ s i /, c harfida bo'lgani kabi) – statik tipdagi tizimga ega bo'lgan tizimli
dasturlash,
leksik
o'zgaruvchan
ko'lam
va
rekursiyani
qo'llabquvvatlaydigan universal, protsessual kompyuter dasturlash tili.
Dizayn bo'yicha C odatdagi mashinalar ko'rsatmalariga samarali mos
keladigan tuzilmalarni taqdim etadi. Ilgari assotsiatsiya tilida yozilgan
dasturlarda kuchli foydalanishni topdi. Bunday dasturlarga operatsion
tizimlar va kompyuter arxitekturasi uchun turli xil dasturiy ta'minotlar
kiradi,
superkompyuterlardan
PLC
va
o'rnatilgan
tizimlarga
qadar.Dastlab B dasturlash tilining vorisi bo'lgan C dastlab Bell Labs-da
Dennis Ritchi tomonidan 1972-1973 yillarda Unix-da ishlaydigan
kommunal xizmatlarni yaratish uchun ishlab chiqilgan. Unix operatsion
tizimining yadrosini qayta tiklash uchun foydalanilgan.1980yillarda C
asta-sekin mashhurlikka erishdi. Mavjud kompyuter arxitekturalari va
operatsion tizimlarining aksariyati uchun mavjud bo'lgan turli xil ishlab
chiqaruvchilarning C kompilyatorlari bilan dasturlash tillari orasida eng
ko'p ishlatiladigan tillarga aylandi. C 1989 yildan beri ANSI (ANSI C) va
Xalqaro
Standartlashtirish
Tashkiloti
(ISO)
tomonidan
standartlashtirilgan. 2021 yil yanvar holatiga ko'ra C eng mashhur
dasturlash tili hisoblanadi. C imperativ protsessual tildir. U past
darajadagi xotiraga kirish va kompyuter ko'rsatmalarini samarali
ravishda xaritada aks ettiradigan til tuzilmalarini ta'minlash uchun
kompilyatsiya uchun mo'ljallangan bo'lib, ularning hammasi ish vaqtini
minimal darajada qo'llabquvvatlaydi. Past darajadagi imkoniyatlariga
qaramay, til platformalararo dasturlashni rag'batlantirish uchun
yaratilgan. Portativlikni yodda tutgan holda yozilgan standartlarga mos
keluvchi S dasturi har xil kompyuter platformalari va operatsion tizimlari
uchun asl C (/ s i / c harfidagi kabi) kichik modifikatsiyalari bilan tuzilishi
mumkin, bu universal, protsessual kompyuter dasturlash tilidir. Statik
tipdagi tizim bilan tuzilgan dasturlash, leksik o'zgaruvchan ko'lam va
rekursiya. Dizayn bo'yicha C odatdagi mashinalar ko'rsatmalariga
samarali mos keladigan tuzilmalarni taqdim etadi. Ilgari assotsiatsiya
tilida yozilgan dasturlarda kuchli foydalanishni topdi. Bunday dasturlarga
operatsion tizimlar va kompyuter arxitekturasi uchun turli xil dasturiy
ta'minotlar kiradi, superkompyuterlardan PLC va o'rnatilgan tizimlarga
qadar.Dastlab B dasturlash tilining vorisi bo'lgan C dastlab Bell Labsda
Dennis Ritchi tomonidan 1972-1973 yillarda Unix-da ishlaydigan
kommunal xizmatlarni yaratish uchun ishlab chiqilgan.
Unix operatsion tizimining yadrosini qayta tiklash uchun foydalanilgan.
1980-yillarda C asta-sekin mashhurlikka erishdi. Mavjud kompyuter
arxitekturalari va operatsion tizimlarining aksariyati uchun mavjud
bo'lgan turli xil ishlab chiqaruvchilarning C kompilyatorlari bilan
dasturlash tillari orasida eng ko'p ishlatiladigan tillarga aylandi. C 1989
yildan beri ANSI (ANSI C) va Xalqaro Standartlashtirish Tashkiloti (ISO)
tomonidan standartlashtirilgan. 2021 yil yanvar holatiga ko'ra C eng
mashhur dasturlash tilidir. C imperativ protsessual tildir. U past
darajadagi xotiraga kirishni va kompyuter ko'rsatmalarini samarali
ravishda xaritada aks ettiradigan til tuzilmalarini ta'minlash uchun
kompilyatsiya uchun mo'ljallangan bo'lib, ularning barchasi minimal ish
vaqtini qo'llab-quvvatlaydi. Past darajadagi imkoniyatlariga qaramay, til
platformalararo dasturlashni rag'batlantirish uchun yaratilgan.
Portativlikni hisobga olgan holda yozilgan standartlarga mos keluvchi S
dasturi turli xil turlari uchun tuzilishi mumkin.Algol an'analarida aksariyat
protsessual tillar singari, C ham tuzilgan dasturlash uchun imkoniyatlarga
ega va leksik ko'lamini aniqlash va rekursiya qilishga imkon beradi. Uning
statik turi tizimi kutilmagan operatsiyalarni oldini oladi. Cda barcha
bajariladigan kodlar subroutineslarda mavjud («funksionalliklar» deb
ham nomlanadi, garchi qat'iy funksional dasturlash ma'nosida bo'lmasa
ham). Funksiya parametrlari har doim qiymat bo'yicha uzatiladi
(massivlardan tashqari). Yo'naltiruvchi o'tish aniq ko'rsatgich qiymatlari
orqali C da modellashtirilgan. C dasturining manba kodi erkin formatda
bo'lib, nuqta-verguldan foydalaniladi, bayonot terminatori va operator
bloklarini guruhlash uchun jingalak qavslar. Tilda ibtidoiy boshqaruv
oqimlarining to'liq to'plamini o'z ichiga olgan kichik, aniq sonli kalit
so'zlar mavjud: if / else, for, do / while, while va switch. Maxsus nomlar
har qanday sigilda kalit so'zlardan farq qilmaydi.Unda juda ko'p sonli
arifmetik, bitli va mantiqiy operatorlar mavjud: +, + =, ++, &, || va
boshqalar. Bitta bayonotda bir nechta topshiriqlarni bajarish
mumkin.Qaytgan funktsiyalar kerak bo'lmaganda e'tiborsiz qoldirilishi
mumkin. Funksiya va ma'lumotlar ko'rsatgichlari ish vaqtida
o'zboshimchalik bilan polimorfizmga imkon beradi.
Boshqa funksiyalarning leksik doirasidagi funktsiyalarni aniqlash mumkin
emas.Ma'lumotlarni yozish statik, ammo bajarilmaydi; barcha
ma'lumotlar har xil, ammo aniq konvertatsiya qilish mumkin.
Deklaratsiyalar sintaksisi emas, foydalanish taqlidining konteksti. C-da
«definition» kalit so'zi mavjud emas; buning o'rniga, tip nomi bilan
boshlangan bayonot deklaratsiya deb hisoblanadi. «Function» kalit so'zi
mavjud emas; o'rniga, funktsiya argumentlarning qavslar ro'yxati
mavjudligi bilan ko'rsatiladi. Foydalanuvchi tomonidan belgilangan
(typedef) va kompozit turlari mumkin. Ma'lumotlarning bir hil bo'lmagan
to'plangan turlari (struct) sizga tegishli ma'lumotlar elementlariga
kirishga va ularni bir butun sifatida belgilashga imkon beradi. Kasaba
uyushmasi – bu bir-biri bilan bir-birining ustiga chiqadigan tuzilma; faqat
oxirgi saqlangan a'zo haqiqiydir. Massiv indeksatsiyasi – bu ko'rsatkich
arifmetikasi nuqtai nazaridan aniqlangan ikkinchi darajali yozuv.
Strukturalardan farqli o'laroq, massivlar birinchi darajali ob'ektlar emas:
ularni alohida o'rnatilgan operatorlar yordamida tayinlash yoki
taqqoslash mumkin emas. «Massiv» kalit so'zi ishlatilmaydi yoki
aniqlanmagan; buning o'rniga kvadrat qavslar, masalan, sintaktik
ravishda oy qatorlarini ko'rsatadi Enum kalit so'zi bilan sanab o'tilgan
turlar mumkin.
Ular butun sonlar bilan erkin konvertatsiya qilinadi. Satrlar alohida
ma'lumotlar turi emas, lekin odatda null terminali belgilar qatori sifatida
amalga oshiriladi. Kompyuter xotirasiga past darajadagi kirish
mashinaning manzillarini terilgan ko'rsatgichlarga aylantirish orqali
amalga
oshiriladi.
Protseduralar
(qiymatlarni
qaytarmaydigan
subroutines) – bu tipik bo'lmagan bo'sh qaytarish turiga ega bo'lgan
funktsiyalarning alohida holati. 5-
|