səhifə 5/6 tarix 09.10.2023 ölçüsü 26,08 Kb. #153353
5-mavzu Massivlar va vektorlar
Xotirada struktura elementlari ular e'lon qilingan tartibda ketma-ket saqlanadi: birinchi element xotiraning kichik manziliga, oxirgisi esa katta manzilga mos keladi. Struktura o'zgaruvchisini massivlardagi kabi ularni e’lon qilishda initsializatsiya qilish mumkin: struct book library = { “С++ tili”, “Straustup”, 1990, 500, 1000 }; Struktura elementiga murojaat nuqta operatori yordamida amalga oshiriladi: library.author=”Павловская”; // oshkor initsializatsiya gets (library.author); // qiymat kiritish Strukturalar massivi Strukturalar massivini tavsiflash odatdagi massivlardek amalga oshiriladi: struct book catalog[10]; catalog massivining har bir elementi book tipidagi strukturani ifodalaydi. Massiv elementlarigamurojaat qilish massiv nomi bilan bog’langan indeks yordamida amalga oshiriladi: catalog[2].title catalog[4].price catalog[2].title[5] // 3-strukturadagi 6 elementli simvollar massivi Struktura elementi boshqa struktura bo'lishi mumkin. struct myfile { char name[10]; char ftype[4]; int ver; }; struct dir { struct myfile f; int size; } my_f [100]; Ichma-ich strukturaning shablonlari boshqa strukturadagi haqiqiy struktura o'zgaruvchisi tavsiflanishidan oldin yozilishi kerak. my_f [0].size // 1-strukturaning size elementi my_f [2].f.ver // 3-chi my_f strukturadagi ichki f strukturaning ver elementi Strukturalarga ko’rsatgichlar Strukturalarga ko’rsatgichni e’lon qilamiz: struct dir *pst; *pst ko’rsatgichga dir tipidagi ixtiyoriy strukturani havolasi uchun foydalanish mumkin: pst = &my_f [0]; Strukturaning maydonlariga ko'rsatgich orqali murojaat bilvosita murojaat operatsiyasi yordamida amalga oshiriladi pst->size ≡ my_f [0].size (pst+i)->size ≡ my_f [i].size Ichma-ich strukturalar uchun: my_f [0].f.ver ≡ pst (f.ver) my_f [0].f.name[0] ≡ pst (f.name[0]) Dostları ilə paylaş: