C++ tilidagi massivlar Olingan ma'lumotlar turlari


Massivlarning asosiy xossalari


Download 24.64 Kb.
bet2/4
Sana18.12.2022
Hajmi24.64 Kb.
#1030735
1   2   3   4
Bog'liq
7878 (1)

3. Massivlarning asosiy xossalari


Massivlarning birinchi xos xususiyati shundaki, massivning ta’rifi uning o‘lchamini ko‘rsatishni talab qiladi. Siz massivning o'lchamini turli yo'llar bilan tuzatishingiz mumkin (biz ular haqida allaqachon gaplashdik), lekin buni e'lon qilish vaqtida, tegishli deklaratsiya bayonotida darhol qilish kerak.


Ko'p modulli dasturning modullarida massiv dasturning modullaridan birida (asosiy modulda) aniqlanadi. Boshqa modullarda ushbu massivni e'lon qilishda extern spetsifikatsiyasi qo'llaniladi. Xuddi shunday deklaratsiyani asosiy modulga kiritish mumkin. Asosiysi, tarjimon deklaratsiya va ta'rifning o'zini ajrata oladi.
Ekstern spetsifikatorli deklaratsiyalarda siz e'lon qilingan massivning ixtiyoriy o'lchamlarini belgilashingiz mumkin (agar ular doimiy ifoda sifatida tasvirlangan bo'lsa) yoki siz ularni umuman ko'rsata olmaysiz - tarjimon ularni baribir o'qimaydi.

int intArray1[10] = {0,1,2,3,4,5,6,7,8,9};


extern intArray1[];
extern intArray1[1000];

Ko'rinishidan, agar tarjimon hali ham deklaratsiyadagi doimiy ifodaning qiymatini o'qimasa, nega u erda o'zgaruvchilarni o'z ichiga olgan ifoda yozmaslik kerak?


int ArrVal = 99;


extern intArray1[ArrVal + 1];

/*Biroq, buni amalga oshirish mumkin emas. ArrVal doimiy ifoda emas.*/


Ammo boshqa tomondan, u qayta ishga tushirish qalqib chiquvchi oynalarini juda qattiq nazorat qiladi.

extern intArray1[10] = {9,9,9,};


/*Bu yerda xatolik qayd qilinadi. Agar massiv o'lchami deklaratsiyada tekshirilmagan bo'lsa-da, ishga tushirishga javob berishning nima keragi bor */


Massivlarning ikkinchi xossasi shundan iboratki, massiv obyektiga boshqa qiymatni belgilash mumkin emas, hatto bu qiymat bir xil turdagi va o‘lchamdagi massiv bo‘lsa ham:

char chArray_1[6];


char chArray_2[] = {'q', 'w', 'e', 'r', 't', 'y'};
Ko'rishni tayinlash operatoridan foydalanishga harakat qiling
chArray_1 = chArray_2;

xato xabarini ko'taradi, uning mohiyati chArray_1 ifodasi chap qo'l ifodasi emasligini bildirishdir.





Download 24.64 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




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